:root{--accent:#b27f54;--accent-dark:#8f633e;--bg:#f4eee7;--surface:#fffdf9;--surface-muted:#f8f4ef;--line:#e5d8cc;--text:#2f2b27;--muted:#786f66;--shadow:0 18px 45px #4d39291f}*{box-sizing:border-box}html,body,#root{max-width:100%;overflow-x:hidden}body{background:var(--bg);min-width:320px;min-height:100vh;color:var(--text);letter-spacing:0;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}select{appearance:none;border:1px solid var(--line);background:linear-gradient(45deg, transparent 50%, var(--accent-dark) 50%) calc(100% - 18px) 50% / 7px 7px no-repeat, linear-gradient(135deg, var(--accent-dark) 50%, transparent 50%) calc(100% - 13px) 50% / 7px 7px no-repeat, #fff;width:100%;min-height:46px;color:var(--text);border-radius:8px;outline:0;padding:10px 40px 10px 12px}select:focus{border-color:var(--accent);box-shadow:0 0 0 4px #b27f5424}select option{background:var(--surface);color:var(--text)}a{color:inherit;text-decoration:none}.screen-loader{min-height:100vh;color:var(--accent-dark);place-items:center;font-weight:700;display:grid}.login-page{background:linear-gradient(135deg,#fffdf9eb,#f4eee7e6),radial-gradient(circle at 20% 10%,#b27f541f,#0000 32%);place-items:center;min-height:100vh;padding:32px 18px;display:grid}.login-panel{border:1px solid var(--line);width:min(100%,460px);box-shadow:var(--shadow);background:#fffdf9f0;border-radius:8px;padding:38px}.login-logo{object-fit:contain;width:min(100%,360px);max-height:120px;margin:0 auto 30px;display:block}.login-form{gap:18px;display:grid}.login-form label{color:var(--muted);gap:8px;font-size:.92rem;font-weight:700;display:grid}.input-shell{border:1px solid var(--line);min-height:50px;color:var(--accent);background:#fff;border-radius:8px;align-items:center;gap:10px;padding:0 14px;display:flex}.input-shell:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px #b27f5424}.input-shell input{width:100%;color:var(--text);background:0 0;border:0;outline:0}.primary-button,.ghost-button,.danger-button{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;font-weight:800;display:inline-flex}.primary-button{background:var(--accent);color:#fff;margin-top:6px}.primary-button:hover,.primary-button:focus-visible{background:var(--accent-dark)}.primary-button:disabled{cursor:not-allowed;opacity:.7}.danger-button{color:#fff;background:#a5362f;padding:0 16px}.danger-button:hover,.danger-button:focus-visible{background:#842821}.danger-button:disabled{cursor:not-allowed;opacity:.7}.form-error{color:#a5362f;margin:0;font-size:.92rem;font-weight:700}.app-shell{grid-template-columns:264px 1fr;max-width:100%;min-height:100vh;display:grid;overflow-x:hidden}.sidebar{border-right:1px solid var(--line);background:#fffaf4;height:100vh;padding:24px 18px;position:sticky;top:0}.sidebar-mark{justify-content:center;align-items:center;min-height:84px;margin-bottom:20px;display:flex}.sidebar-mark img{object-fit:contain;width:72px;height:72px;display:block}.sidebar-nav{gap:6px;display:grid}.sidebar-link{min-height:46px;color:var(--muted);border-radius:8px;align-items:center;gap:12px;padding:0 12px;font-weight:750;display:flex}.sidebar-link svg{color:var(--accent)}.sidebar-link.active{color:var(--text);background:#b27f5424}.main-panel{min-width:0;max-width:100%}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf9e6;justify-content:space-between;align-items:center;gap:18px;min-height:78px;padding:16px 30px;display:flex}.topbar strong,.topbar span{margin-right:10px;display:inline-block}.topbar span{color:var(--muted)}.eyebrow{color:var(--accent);text-transform:uppercase;margin:0 0 4px;font-size:.75rem;font-weight:900}.ghost-button{border-color:var(--line);color:var(--accent-dark);background:#fff;padding:0 14px}.ghost-button:hover,.ghost-button:focus-visible{border-color:var(--accent)}.content-area{min-width:0;max-width:100%;padding:30px}.module-page{gap:24px;min-width:0;max-width:100%;display:grid}.page-heading h1{margin:0 0 8px;font-size:clamp(1.8rem,3vw,2.6rem)}.page-heading p:last-child{max-width:640px;color:var(--muted);margin:0}.placeholder-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.placeholder-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;min-height:180px;padding:24px;box-shadow:0 12px 28px #4d392912}.placeholder-card span{background:var(--accent);border-radius:999px;width:42px;height:4px;margin-bottom:22px;display:block}.placeholder-card h2{margin:0 0 8px;font-size:1.05rem}.placeholder-card p{color:var(--muted);margin:0}.dashboard-page{gap:20px;display:grid}.dashboard-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.dashboard-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;min-height:108px;padding:18px;display:grid;box-shadow:0 12px 28px #4d39290f}.dashboard-card-icon{width:42px;height:42px;color:var(--accent);background:#b27f541f;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.dashboard-card span:not(.dashboard-card-icon){color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:900;display:block}.dashboard-card strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:clamp(1.35rem,2vw,1.75rem);display:block;overflow:hidden}.dashboard-card-success .dashboard-card-icon{color:#3d7d50;background:#3d7d501a}.dashboard-card-danger .dashboard-card-icon{color:#8d332e;background:#a5362f14}.dashboard-card-warning .dashboard-card-icon,.dashboard-card-accent .dashboard-card-icon{color:var(--accent-dark);background:#b27f5421}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.dashboard-section{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-content:start;gap:14px;padding:18px;display:grid;box-shadow:0 12px 28px #4d39290f}.dashboard-section-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.dashboard-section h2{color:var(--text);margin:0;font-size:1.05rem}.dashboard-list{gap:10px;display:grid}.dashboard-list-item{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:12px;display:flex}.dashboard-list-item>div:first-child{min-width:0}.dashboard-list-item strong,.dashboard-list-item span,.dashboard-list-item small{display:block}.dashboard-list-item strong,.dashboard-list-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-list-item span,.dashboard-list-item small{color:var(--muted);margin-top:4px;font-size:.86rem}.dashboard-list-meta{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px;display:flex}.dashboard-status-badge{width:fit-content;min-height:28px;color:var(--accent-dark);white-space:nowrap;background:#b27f541a;border:1px solid #b27f5438;border-radius:999px;align-items:center;padding:6px 10px;font-size:.78rem;font-weight:900;line-height:1;display:inline-flex}.page-toolbar{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.feedback,.empty-state{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:8px;margin:0;padding:14px 16px;font-weight:700}.feedback.success{color:#3d7d50;border-color:#3d7d5047}.feedback.danger{color:#a5362f;border-color:#a5362f47}.list-panel,.form-panel,.detail-card,.patient-hero{border:1px solid var(--line);background:var(--surface);border-radius:8px;box-shadow:0 12px 28px #4d392912}.list-panel,.form-panel{min-width:0;max-width:100%;padding:20px}.search-bar{grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-bottom:18px;display:grid}.responsive-table{width:100%;min-width:0;max-width:100%;overflow:auto hidden}table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:0}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:14px 18px}th+th,td+td{border-left:1px solid #e5d8ccb8}th{color:var(--accent-dark);text-transform:uppercase;font-size:.78rem}td{color:var(--text);overflow:hidden}th,td{min-width:0}.truncate-cell{text-overflow:ellipsis;white-space:nowrap;max-width:1px;overflow:hidden}.money-cell{white-space:nowrap}.actions-cell{width:164px;min-width:164px;overflow:visible}.actions-cell .table-actions{justify-content:flex-start;min-width:max-content}tr:last-child td{border-bottom:0}.table-actions{flex-wrap:nowrap;align-items:center;gap:8px;display:flex}.icon-button{border:1px solid var(--line);width:38px;height:38px;color:var(--accent-dark);background:#fff;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover,.icon-button:focus-visible{border-color:var(--accent);color:var(--accent)}.danger-icon{color:#a5362f}.form-panel-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.form-panel-header h2{margin:0;font-size:1.35rem}.patient-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.patient-form label{color:var(--muted);gap:8px;font-size:.9rem;font-weight:800;display:grid}.patient-form input,.patient-form select,.patient-form textarea{border:1px solid var(--line);width:100%;min-height:46px;color:var(--text);background:#fff;border-radius:8px;outline:0;padding:10px 12px}.custom-select-field{color:var(--muted);gap:8px;font-size:.9rem;font-weight:800;display:grid;position:relative}.custom-select-trigger{border:1px solid var(--line);width:100%;min-height:46px;color:var(--text);text-align:left;background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-weight:700;display:flex}.custom-select-trigger.placeholder{color:var(--muted)}.custom-select-trigger svg{color:var(--accent);flex:none;transition:transform .18s}.custom-select-trigger[aria-expanded=true]{border-color:var(--accent);box-shadow:0 0 0 4px #b27f5424}.custom-select-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.custom-select-trigger:disabled{cursor:not-allowed;opacity:.68;background:var(--surface-muted)}.custom-select-menu{z-index:40;background:var(--surface);border:1px solid #b27f5447;border-radius:8px;max-height:260px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 42px #4d392929}.custom-select-menu button{width:100%;min-height:38px;color:var(--text);text-align:left;background:0 0;border:0;border-radius:6px;padding:9px 10px;font-weight:750}.custom-select-menu button:hover,.custom-select-menu button.active{color:var(--accent-dark);background:#b27f541f}.custom-select-menu button.selected{color:var(--accent-dark);box-shadow:inset 3px 0 0 var(--accent);background:#b27f542e}.date-picker-field{color:var(--muted);gap:8px;font-size:.9rem;font-weight:800;display:grid;position:relative}.date-picker-trigger{border:1px solid var(--line);width:100%;min-height:46px;color:var(--text);text-align:left;background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-weight:700;display:flex}.date-picker-trigger.placeholder{color:var(--muted)}.date-picker-trigger svg{color:var(--accent)}.date-picker-trigger:hover,.date-picker-trigger:focus-visible,.date-picker-trigger[aria-expanded=true]{border-color:var(--accent);box-shadow:0 0 0 4px #b27f5424}.date-picker-popover{z-index:50;background:var(--surface);border:1px solid #b27f5447;border-radius:8px;width:min(320px,100vw - 48px);padding:14px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 18px 42px #4d392929}.date-picker-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.date-picker-header strong{color:var(--text);text-transform:capitalize}.date-picker-header button{border:1px solid var(--line);width:34px;height:34px;color:var(--accent-dark);background:#fff;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.date-picker-header button:hover,.date-picker-header button:focus-visible{border-color:var(--accent);color:var(--accent)}.date-picker-weekdays,.date-picker-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.date-picker-weekdays{margin-bottom:6px}.date-picker-weekdays span{color:var(--accent-dark);text-align:center;text-transform:uppercase;font-size:.72rem;font-weight:900}.date-picker-grid button{aspect-ratio:1;min-width:0;color:var(--text);background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;font-weight:850;display:inline-flex}.date-picker-grid button:hover,.date-picker-grid button:focus-visible{color:var(--accent-dark);background:#b27f541a;border-color:#b27f5461}.date-picker-grid button.outside-month{color:#786f667a}.date-picker-grid button.today{border-color:#b27f5473;box-shadow:inset 0 0 0 1px #b27f5424}.date-picker-grid button.selected{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 8px 18px #b27f5447}.date-picker-clear{border:1px solid var(--line);width:100%;min-height:36px;color:var(--accent-dark);background:#fff;border-radius:8px;margin-top:10px;font-weight:850}.date-picker-clear:hover,.date-picker-clear:focus-visible{border-color:var(--accent)}.date-time-field{grid-template-columns:minmax(0,1.25fr) minmax(120px,.75fr);align-items:end;gap:12px;display:grid}.time-picker-field{color:var(--muted);gap:8px;font-size:.9rem;font-weight:800;display:grid;position:relative}.time-picker-input-shell{border:1px solid var(--line);min-height:46px;color:var(--text);background:#fff;border-radius:8px;align-items:center;display:flex;overflow:hidden}.time-picker-input-shell:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px #b27f5424}.time-picker-input-shell.invalid{border-color:#a5362f}.time-picker-input-shell input{width:100%;min-height:44px;color:var(--text);background:0 0;border:0;outline:0;padding:10px 12px}.time-picker-input-shell button{border:0;border-left:1px solid var(--line);background:var(--surface-muted);width:44px;min-height:44px;color:var(--accent);justify-content:center;align-items:center;display:inline-flex}.time-picker-input-shell button:hover,.time-picker-input-shell button:focus-visible{background:#b27f541f}.time-picker-field small,.patient-form small{color:var(--muted);font-size:.78rem;font-weight:750}.readonly-input{font-weight:800;background:var(--surface-muted)!important;color:var(--accent-dark)!important}.time-picker-menu{z-index:50;background:var(--surface);border:1px solid #b27f5447;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;max-height:230px;padding:8px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 42px #4d392929}.time-picker-menu button{min-height:36px;color:var(--text);background:0 0;border:0;border-radius:6px;font-weight:850}.time-picker-menu button:hover,.time-picker-menu button.active{color:var(--accent-dark);background:#b27f541f}.time-picker-menu button.selected{background:var(--accent);color:#fff}.patient-form textarea{resize:vertical}.patient-form input:focus,.patient-form select:focus,.patient-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px #b27f5424}.span-2{grid-column:span 2}.form-actions{justify-content:flex-end;gap:12px;display:flex}.back-link{width:fit-content;color:var(--accent-dark);align-items:center;gap:8px;font-weight:800;display:inline-flex}.patient-hero{justify-content:space-between;align-items:flex-start;gap:18px;padding:26px;display:flex}.patient-hero h1{margin:0;font-size:clamp(1.9rem,3vw,2.7rem)}.patient-nickname{color:var(--muted);margin:8px 0 0;font-weight:700}.patient-contact{color:var(--muted);gap:10px;font-weight:700;display:grid}.patient-contact span{align-items:center;gap:8px;display:inline-flex}.patient-contact svg{color:var(--accent)}.details-tabs{gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.details-tabs span,.details-tabs button{border:1px solid var(--line);background:var(--surface);min-width:max-content;color:var(--muted);border-radius:8px;padding:10px 12px;font-weight:800}.details-tabs .active-tab{border-color:var(--accent);color:var(--text);background:#b27f5424}.details-grid{grid-template-columns:1.5fr 1fr;gap:18px;display:grid}.detail-card{padding:22px}.detail-card h2{margin:0 0 18px;font-size:1.2rem}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.info-item{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;gap:5px;padding:12px;display:grid}.info-item span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:900}.info-item strong{overflow-wrap:anywhere}.notes-text{color:var(--muted);white-space:pre-wrap;margin:0;line-height:1.6}.future-modules-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.module-placeholder-wide{min-height:220px}.anamnesis-section{gap:20px;display:grid}.compact-heading h2{margin:0 0 8px;font-size:clamp(1.4rem,2.4vw,2rem)}.compact-heading p:last-child{max-width:720px;color:var(--muted);margin:0}.anamnesis-form-panel{scroll-margin-top:16px}.anamnesis-form{align-items:start}.form-section-title{color:var(--accent-dark);text-transform:uppercase;padding:14px 0 2px;font-size:.82rem;font-weight:900}.question-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.yes-no-question{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;align-content:start;gap:14px;min-height:126px;padding:16px;display:grid}.yes-no-question-header{gap:12px;display:grid}.yes-no-question-header strong{color:var(--text);line-height:1.35}.yes-no-options{flex-wrap:wrap;gap:8px;display:flex}.yes-no-options button{border:1px solid var(--line);min-width:84px;min-height:38px;color:var(--muted);background:#fff;border-radius:8px;justify-content:center;align-items:center;padding:0 14px;font-weight:900;display:inline-flex}.yes-no-options button:hover,.yes-no-options button:focus-visible{border-color:var(--accent);color:var(--accent-dark)}.yes-no-options button.selected{border-color:var(--accent);color:var(--accent-dark);background:#b27f5429;box-shadow:inset 0 0 0 1px #b27f5424}.question-detail-field{gap:8px;display:grid}.question-detail-field span{color:var(--muted);font-size:.82rem;font-weight:900}.declaration-box{background:#b27f541a;border:1px solid #b27f5452;border-radius:8px;padding:16px}.declaration-box strong{color:var(--accent-dark)}.declaration-box p{color:var(--muted);margin:8px 0 0;line-height:1.55}.anamnesis-card{gap:18px;display:grid}.card-title-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.card-title-row h2{margin-bottom:0}.anamnesis-summary-grid,.answer-grid{gap:12px;display:grid}.anamnesis-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.answer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.answer-item,.anamnesis-text-block{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;gap:6px;min-width:0;padding:12px;display:grid}.answer-item span,.anamnesis-text-block span{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:900}.answer-item strong{color:var(--text);text-transform:capitalize}.answer-item p,.anamnesis-text-block p{color:var(--muted);overflow-wrap:anywhere;white-space:pre-wrap;margin:0;line-height:1.5}.compact-details-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.history-list{gap:10px;display:grid}.history-item{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.history-item div:first-child{gap:4px;display:grid}.history-item span{color:var(--muted);font-size:.9rem}.history-item p{color:var(--muted);margin:0;line-height:1.45}.signed-form-section{border:1px solid var(--line);background:#fffaf4;border-radius:8px;gap:14px;padding:18px;display:grid}.attachment-upload{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;display:grid}.attachment-upload label{color:var(--muted);gap:8px;font-size:.9rem;font-weight:800;display:grid}.attachment-upload input{border:1px solid var(--line);width:100%;min-height:46px;color:var(--text);background:#fff;border-radius:8px;padding:10px 12px}.attachment-list{gap:10px;display:grid}.attachment-item{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.attachment-icon{width:42px;height:42px;color:var(--accent-dark);background:#b27f5424;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.attachment-item strong,.attachment-item span{overflow-wrap:anywhere;display:block}.attachment-item span{color:var(--muted);margin-top:4px;font-size:.9rem}.agenda-filters,.calendar-panel,.day-panel,.patient-appointments-section{border:1px solid var(--line);background:var(--surface);border-radius:8px;box-shadow:0 12px 28px #4d392912}.agenda-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:18px;display:grid}.agenda-filters label{color:var(--muted);gap:8px;font-size:.9rem;font-weight:800;display:grid}.agenda-filters select,.agenda-filters input{border:1px solid var(--line);width:100%;min-height:44px;color:var(--text);background:#fff;border-radius:8px;padding:9px 12px}.agenda-layout{grid-template-columns:minmax(0,1.3fr) minmax(340px,.7fr);align-items:start;gap:18px;display:grid}.calendar-panel,.day-panel,.patient-appointments-section{padding:20px}.calendar-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.calendar-header h2{text-transform:capitalize;margin:0}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.calendar-weekdays{margin-bottom:8px}.calendar-weekdays span{color:var(--accent-dark);text-align:center;text-transform:uppercase;font-size:.78rem;font-weight:900}.calendar-day{border:1px solid var(--line);min-height:86px;color:var(--text);text-align:left;background:#fff;border-radius:8px;align-content:space-between;justify-items:start;padding:10px;display:grid}.calendar-day:hover,.calendar-day:focus-visible{border-color:var(--accent)}.calendar-day.outside-month{opacity:.45}.calendar-day.selected{border-color:var(--accent);background:#b27f5424}.calendar-day span{font-weight:900}.calendar-city-indicators{flex-wrap:wrap;gap:4px;max-width:100%;display:flex}.calendar-day .calendar-city-count{background:var(--city-color,var(--accent));color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 7px;font-size:.8rem;line-height:1;display:inline-flex;box-shadow:0 6px 14px #4d39291f}.calendar-day .calendar-city-count:nth-child(n+4){display:none}.appointment-list,.patient-appointment-list{gap:12px;display:grid}.appointment-card{border:1px solid var(--line);border-left:5px solid var(--accent);background:var(--surface-muted);text-align:left;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px;display:grid}.appointment-card h3,.appointment-card p{margin:0}.appointment-card h3{margin-top:4px;font-size:1rem}.appointment-card p{color:var(--muted);margin-top:4px}.appointment-card>span{color:var(--accent-dark);text-transform:uppercase;background:#b27f5424;border-radius:999px;padding:8px 10px;font-size:.82rem;font-weight:900}.status-confirmado{border-left-color:#3d7d50}.status-finalizado{border-left-color:#4c6f91}.status-cancelado,.status-faltou{border-left-color:#a5362f}.status-reagendado{border-left-color:#9a7433}.appointment-form-panel{scroll-margin-top:16px}.patient-procedures-section{gap:20px;display:grid}.procedure-form-panel,.procedure-view-card{scroll-margin-top:16px}.procedure-form{align-items:start}.procedure-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.procedures-main-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.linked-procedure-badge{color:#3d7d50;background:#3d7d501a;border:1px solid #3d7d503d;border-radius:999px;width:fit-content;margin-top:8px;padding:6px 8px;font-size:.78rem;font-weight:900;display:inline-flex}.financial-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.summary-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:8px;padding:18px;display:grid;box-shadow:0 12px 28px #4d39290f}.summary-card span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:900}.summary-card strong{color:var(--text);font-size:1.45rem}.financial-status-badge{width:fit-content;min-height:28px;color:var(--accent-dark);white-space:nowrap;background:#b27f541a;border:1px solid #b27f5438;border-radius:999px;align-items:center;padding:6px 10px;font-size:.78rem;font-weight:900;line-height:1;display:inline-flex}.financial-status-pendente{color:#7b5f2d;background:#9a74331a;border-color:#9a74333d}.financial-status-parcial{color:var(--accent-dark);background:#b27f5421;border-color:#b27f5447}.financial-status-pago{color:#3d7d50;background:#3d7d501a;border-color:#3d7d503d}.financial-status-cancelado{color:#8d332e;background:#a5362f14;border-color:#a5362f38}.modal-subtitle-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.finance-page{gap:20px;display:grid}.finance-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.finance-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.finance-table table{table-layout:fixed;min-width:1540px}.finance-table th:first-child,.finance-table td:first-child{width:105px}.finance-table th:nth-child(2),.finance-table td:nth-child(2){width:130px}.finance-table th:nth-child(3),.finance-table td:nth-child(3){width:190px}.finance-table th:nth-child(4),.finance-table td:nth-child(4){width:150px}.finance-table th:nth-child(5),.finance-table td:nth-child(5){width:140px}.finance-table th:nth-child(6),.finance-table td:nth-child(6){width:155px}.finance-table th:nth-child(7),.finance-table td:nth-child(7),.finance-table th:nth-child(8),.finance-table td:nth-child(8),.finance-table th:nth-child(9),.finance-table td:nth-child(9){width:115px}.finance-table th:nth-child(10),.finance-table td:nth-child(10){width:140px}.finance-table th:nth-child(11),.finance-table td:nth-child(11){width:115px}.finance-table th:nth-child(12),.finance-table td:nth-child(12){width:174px}.finance-table th,.finance-table td{min-width:0}.finance-table td:nth-child(3),.finance-table td:nth-child(4),.finance-table td:nth-child(5),.finance-table td:nth-child(6),.finance-table td:nth-child(10){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.finance-table td:nth-child(7),.finance-table td:nth-child(8),.finance-table td:nth-child(9),.finance-table td:nth-child(11){white-space:nowrap}.finance-modal{width:min(100%,980px)}.finance-view-modal{width:min(100%,920px)}.finance-form{align-items:start}.finance-type-badge{width:fit-content;min-height:28px;color:var(--accent-dark);white-space:nowrap;background:#b27f541a;border:1px solid #b27f5438;border-radius:999px;align-items:center;padding:6px 10px;font-size:.78rem;font-weight:900;line-height:1;display:inline-flex}.finance-type-entrada{color:#3d7d50;background:#3d7d501a;border-color:#3d7d503d}.finance-type-saida,.finance-type-cancelamento{color:#8d332e;background:#a5362f14;border-color:#a5362f38}.finance-type-ajuste{color:var(--accent-dark);background:#b27f5421;border-color:#b27f5447}.users-page{gap:20px;display:grid}.users-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.users-filters{grid-template-columns:1.5fr 1fr 1fr}.users-table table{table-layout:fixed;min-width:880px}.users-table th:first-child,.users-table td:first-child,.users-table th:nth-child(2),.users-table td:nth-child(2){width:24%}.users-table th:nth-child(3),.users-table td:nth-child(3),.users-table th:nth-child(4),.users-table td:nth-child(4),.users-table th:nth-child(5),.users-table td:nth-child(5){width:13%}.users-table th:nth-child(6),.users-table td:nth-child(6){width:172px}.user-modal{width:min(100%,860px)}.user-view-modal{width:min(100%,760px)}.user-status-badge{width:fit-content;min-height:28px;color:var(--accent-dark);white-space:nowrap;background:#b27f541a;border:1px solid #b27f5438;border-radius:999px;align-items:center;padding:6px 10px;font-size:.78rem;font-weight:900;line-height:1;display:inline-flex}.user-status-active{color:#3d7d50;background:#3d7d501a;border-color:#3d7d503d}.user-status-inactive{color:#8d332e;background:#a5362f14;border-color:#a5362f38}.settings-page{gap:20px;display:grid}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.settings-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-content:start;gap:18px;padding:20px;display:grid;box-shadow:0 12px 28px #4d39290f}.settings-card-header{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;display:grid}.settings-card-header>span{width:40px;height:40px;color:var(--accent);background:#b27f541f;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.settings-card h2,.settings-card p{margin:0}.settings-card h2{font-size:1.12rem}.settings-card-header p{color:var(--muted);margin-top:4px;line-height:1.45}.settings-form{align-items:start}.settings-city-list{gap:10px;display:grid}.settings-city-item{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.settings-city-item strong,.settings-city-item small{display:block}.settings-city-item small{color:var(--muted);margin-top:4px;font-weight:750}.settings-role-list{gap:10px;display:grid}.settings-role-item{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;gap:8px;padding:12px;display:grid}.settings-role-item p{color:var(--muted);margin:0}.city-color-dot{border:2px solid #fff;border-radius:999px;width:22px;height:22px;box-shadow:0 0 0 1px #4d392926}.color-input-row{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:10px;display:grid}.color-input-row input[type=color]{width:48px;min-height:46px;padding:4px}.settings-static-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.settings-chip-list{flex-wrap:wrap;gap:8px;display:flex}.stock-page{gap:20px;display:grid}.stock-filters{grid-template-columns:1.3fr 1fr 1fr}.stock-table table{table-layout:fixed;width:100%;min-width:0}.stock-table th:first-child,.stock-table td:first-child{width:16%}.stock-table th:nth-child(2),.stock-table td:nth-child(2){width:11%}.stock-table th:nth-child(3),.stock-table td:nth-child(3),.stock-table th:nth-child(4),.stock-table td:nth-child(4),.stock-table th:nth-child(5),.stock-table td:nth-child(5){width:7%}.stock-table th:nth-child(6),.stock-table td:nth-child(6),.stock-table th:nth-child(7),.stock-table td:nth-child(7){width:10%}.stock-table th:nth-child(8),.stock-table td:nth-child(8){width:15%}.stock-table th:nth-child(9),.stock-table td:nth-child(9){width:13%;min-width:0}.stock-table th:last-child,.stock-table td:last-child{width:17%}.stock-table .actions-cell{min-width:0;overflow:hidden}.stock-table .actions-cell .table-actions{gap:5px;min-width:0}.stock-table .icon-button{width:32px;height:32px}.stock-table td:nth-child(3),.stock-table td:nth-child(4),.stock-table td:nth-child(7),.stock-table td:nth-child(8),.procedures-page table td:nth-child(4),.procedures-page table td:nth-child(5),.procedures-page table td:nth-child(7),.stock-status-badge,.finance-status-badge,.detail-status,.city-badge{white-space:nowrap}.stock-status-badge{text-overflow:ellipsis;max-width:150px;overflow:hidden}.stock-status-badge,.stock-movement-badge,.city-badge{width:fit-content;max-width:100%;min-height:28px;color:var(--accent-dark);text-overflow:ellipsis;white-space:nowrap;background:#b27f541a;border:1px solid #b27f5438;border-radius:999px;align-items:center;padding:6px 10px;font-size:.78rem;font-weight:900;line-height:1;display:inline-flex;overflow:hidden}.city-badge{border-color:color-mix(in srgb, var(--city-color,#b27f54) 32%, transparent);background:color-mix(in srgb, var(--city-color,#b27f54) 13%, white);color:color-mix(in srgb, var(--city-color,#b27f54) 78%, #3d2d22);margin-top:6px}.appointment-card{border-left-color:var(--city-color,var(--accent))}.stock-status-normal,.stock-movement-entrada{color:#3d7d50;background:#3d7d501a;border-color:#3d7d503d}.stock-status-baixo,.stock-status-vencendo,.stock-movement-ajuste{color:var(--accent-dark);background:#b27f5421;border-color:#b27f5447}.stock-status-vencido,.stock-movement-saida{color:#8d332e;background:#a5362f14;border-color:#a5362f38}.stock-modal{width:min(100%,760px)}.stock-view-modal{width:min(100%,980px)}.stock-view-content{gap:18px;display:grid}.stock-movement-list{gap:12px;display:grid}.stock-movement-list h3{margin:0;font-size:1rem}.stock-movement-item{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:12px;display:grid}.stock-movement-item strong,.stock-movement-item span,.stock-movement-item small{display:block}.stock-movement-item p{color:var(--muted);margin:4px 0}.stock-movement-item span,.stock-movement-item small{color:var(--muted);margin-top:4px;font-size:.86rem}.styled-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.filler-region-card{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;gap:10px;padding:10px;display:grid}.filler-region-card.selected{background:#b27f5417;border-color:#b27f546b}.styled-checkbox{border:1px solid var(--line);min-height:44px;color:var(--text);text-align:left;background:#fff;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-weight:800;display:flex}.filler-region-card .styled-checkbox{width:100%}.styled-checkbox:hover,.styled-checkbox:focus-visible{border-color:var(--accent);box-shadow:0 0 0 4px #b27f541a}.styled-checkbox span{border:1px solid var(--line);background:var(--surface);border-radius:6px;flex:none;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.styled-checkbox.checked{color:var(--accent-dark);background:#b27f541f;border-color:#b27f546b}.styled-checkbox.checked span{border-color:var(--accent);background:var(--accent)}.styled-checkbox.checked span:after{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:9px;height:5px;transform:rotate(-45deg)translateY(-1px)}.filler-region-amount{gap:8px;display:grid}.filler-region-amount span{color:var(--muted);font-size:.78rem;font-weight:900}.unit-input{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;min-height:44px;display:flex;overflow:hidden}.unit-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px #b27f5424}.unit-input input{width:100%;min-height:42px;color:var(--text);font:inherit;background:0 0;border:0;outline:0;padding:9px 12px}.unit-input strong{border-left:1px solid var(--line);background:var(--surface-muted);color:var(--accent-dark);align-self:stretch;align-items:center;padding:0 12px;font-size:.88rem;font-weight:900;display:inline-flex}.procedure-view-card{gap:18px;display:grid}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2f2b276b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal-panel{background:var(--surface);border:1px solid #b27f5447;border-radius:8px;width:min(100%,980px);max-height:min(88vh,920px);overflow:auto;box-shadow:0 24px 70px #2f2b2738}.modal-header,.modal-actions{justify-content:space-between;align-items:flex-start;gap:16px;padding:20px;display:flex}.modal-header{border-bottom:1px solid var(--line);background:#fffaf4}.modal-header h2,.modal-header p{margin:0}.modal-header p:last-child{color:var(--muted);margin-top:6px;font-weight:750}.modal-content{gap:16px;padding:20px;display:grid}.modal-section{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;gap:12px;padding:16px;display:grid}.modal-section h3{color:var(--accent-dark);text-transform:uppercase;margin:0;font-size:.86rem;font-weight:900}.details-stack{gap:12px;display:grid}.modal-actions{border-top:1px solid var(--line);background:#fffaf4;justify-content:flex-end}.confirm-modal{width:min(100%,560px)}.confirm-modal .modal-header{align-items:flex-start}.confirm-modal .modal-header p:last-child{max-width:440px}.confirm-reason-field{width:100%;color:var(--muted);gap:8px;font-size:.92rem;font-weight:800;display:grid}.confirm-reason-field textarea{resize:vertical;min-height:112px}.procedure-list-tabs{margin:8px 0 2px}.medical-records-section,.medical-record-list{gap:18px;display:grid}.medical-record-form-panel{margin-top:6px}.medical-record-form .large-textarea{min-height:180px;line-height:1.55}.linked-procedure-card{margin:0}.detail-status{min-height:30px;color:var(--accent-dark);background:#b27f541f;border:1px solid #b27f5447;border-radius:999px;align-items:center;padding:5px 10px;font-size:.8rem;font-weight:900;display:inline-flex}.record-notes{border:1px solid var(--line);background:#fffaf4;border-radius:8px;gap:8px;margin-top:14px;padding:12px;display:grid}.record-notes span,.record-photo-section h3{color:var(--accent-dark);text-transform:uppercase;margin:0;font-size:.82rem;font-weight:900}.record-notes p{color:var(--text);margin:0;line-height:1.55}.record-detail-list{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.record-detail-list span{border:1px solid var(--line);background:var(--surface-muted);color:var(--muted);border-radius:8px;padding:7px 10px;font-size:.9rem}.medical-record-modal{width:min(100%,1080px)}.record-photo-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.record-photo-section{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:12px;padding:16px;display:grid}.record-photo-grid{gap:12px;display:grid}.record-photo{border:1px solid var(--line);background:#fffaf4;border-radius:8px;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;display:grid}.record-photo img,.photo-placeholder{border:1px solid var(--line);object-fit:cover;background:var(--surface-muted);border-radius:8px;width:92px;height:72px}.photo-placeholder{color:var(--accent);place-items:center;display:grid}.record-photo strong,.record-photo span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.record-photo span{color:var(--muted);margin-top:4px;font-size:.85rem}.medical-record-item{align-items:center}.deleted-item-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.deleted-item-actions .ghost-button,.deleted-item-actions .danger-button{min-height:38px;margin-top:0;padding:0 12px;font-size:.86rem}.patient-files-section,.patient-file-grid{gap:16px;display:grid}.file-upload-form{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-file-card{grid-template-columns:92px minmax(0,1fr) auto}.patient-file-card p,.patient-file-card small{color:var(--muted);margin:4px 0 0;font-size:.86rem;display:block}.compact-empty{min-height:auto;padding:14px}.procedures-page table th:first-child,.procedures-page table td:first-child{width:15%}.procedures-page table th:nth-child(2),.procedures-page table td:nth-child(2){width:10%}.procedures-page table th:nth-child(3),.procedures-page table td:nth-child(3){width:13%}.procedures-page table th:nth-child(4),.procedures-page table td:nth-child(4){width:12%}.procedures-page table th:nth-child(5),.procedures-page table td:nth-child(5){width:11%}.procedures-page table th:nth-child(6),.procedures-page table td:nth-child(6),.procedures-page table th:nth-child(7),.procedures-page table td:nth-child(7){width:12%}.procedures-page table th:nth-child(8),.procedures-page table td:nth-child(8){width:13%}.procedures-page table th:nth-child(9),.procedures-page table td:nth-child(9){width:164px}.procedure-table-compact table{table-layout:fixed;width:100%;min-width:0}.procedure-table-compact th:first-child,.procedure-table-compact td:first-child{width:18%}.procedure-table-compact th:nth-child(2),.procedure-table-compact td:nth-child(2){width:10%}.procedure-table-compact th:nth-child(3),.procedure-table-compact td:nth-child(3){width:15%}.procedure-table-compact th:nth-child(4),.procedure-table-compact td:nth-child(4){width:18%}.procedure-table-compact th:nth-child(5),.procedure-table-compact td:nth-child(5){width:11%}.procedure-table-compact th:nth-child(6),.procedure-table-compact td:nth-child(6),.procedure-table-compact th:nth-child(7),.procedure-table-compact td:nth-child(7){width:14%}.procedure-table-compact .actions-cell{min-width:0}.procedure-table-compact .actions-cell .table-actions{gap:6px;min-width:0}.procedure-table-compact .icon-button{width:34px;height:34px}.procedure-table-compact td:first-child,.procedure-table-compact td:nth-child(3),.procedure-table-compact td:nth-child(4),.procedure-table-compact td:nth-child(6){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.procedure-table-compact td:nth-child(5){white-space:nowrap}@media (width<=900px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;padding:14px;position:static}.sidebar-mark{justify-content:flex-start;min-height:auto;margin:0 0 12px}.sidebar-mark img{width:48px;height:48px}.sidebar-nav{grid-auto-columns:max-content;grid-auto-flow:column;padding-bottom:2px;overflow-x:auto}.sidebar-link{min-width:max-content}.topbar,.content-area{padding-inline:18px}.placeholder-grid{grid-template-columns:1fr}.page-toolbar,.patient-hero{flex-direction:column}.search-bar,.details-grid,.future-modules-grid,.financial-summary-grid,.finance-summary-grid,.finance-filters,.dashboard-card-grid,.dashboard-grid,.users-summary-grid,.users-filters,.settings-grid,.settings-static-grid,.agenda-filters,.stock-filters,.procedure-filters,.procedures-main-filters,.agenda-layout,.question-grid,.styled-checkbox-grid,.anamnesis-summary-grid,.answer-grid,.compact-details-grid{grid-template-columns:1fr}.responsive-table{overflow:visible}table,thead,tbody,tr,th,td{width:100%;min-width:0;display:block}table{table-layout:auto}thead{display:none}tr{border:1px solid var(--line);background:#fff;border-radius:8px;padding:14px}tr+tr{margin-top:12px}td{border-left:0;border-bottom:1px solid var(--line);grid-template-columns:120px 1fr;gap:10px;padding:9px 0;display:grid;overflow:visible}td:before{content:attr(data-label);color:var(--accent-dark);font-weight:900}td:last-child{border-bottom:0}.truncate-cell{white-space:normal;max-width:none}.actions-cell{width:100%}.patient-form,.info-grid{grid-template-columns:1fr}.history-item,.appointment-card,.attachment-upload,.card-title-row{flex-direction:column;align-items:flex-start}.appointment-card{display:flex}.dashboard-list-item{flex-direction:column;align-items:flex-start}.dashboard-list-meta{justify-content:flex-start}.settings-city-item{grid-template-columns:auto minmax(0,1fr)}.settings-city-item .table-actions{grid-column:1/-1}.calendar-day{min-height:62px;padding:8px}.calendar-weekdays,.calendar-grid{gap:5px}.attachment-upload{flex-direction:column;display:flex}.attachment-upload label,.attachment-upload .primary-button{width:100%}.attachment-item{grid-template-columns:42px minmax(0,1fr)}.attachment-item .table-actions{grid-column:1/-1}.time-picker-menu{grid-template-columns:repeat(3,minmax(0,1fr))}.span-2{grid-column:span 1}}@media (width<=560px){.login-panel{padding:28px 20px}.login-logo{max-height:95px;margin-bottom:24px}.topbar{flex-direction:column;align-items:flex-start}.modal-backdrop{align-items:stretch;padding:12px}.modal-panel{max-height:calc(100vh - 24px)}.modal-header,.modal-actions{flex-direction:column}.modal-actions .ghost-button,.modal-actions .primary-button,.modal-actions .danger-button{width:100%}.record-photo-columns{grid-template-columns:1fr}.record-photo{grid-template-columns:72px minmax(0,1fr)}.record-photo .table-actions{grid-column:1/-1}.record-photo img,.photo-placeholder{width:72px;height:62px}.ghost-button,.page-toolbar .primary-button,.search-bar .ghost-button,.history-item .ghost-button,.day-panel .ghost-button,.attachment-item .icon-button,.form-actions,.form-actions .ghost-button,.form-actions .primary-button{width:100%}.form-actions{flex-direction:column-reverse}td{grid-template-columns:1fr}}img,svg,video,canvas{max-width:100%}.topbar-profile{align-items:center;gap:12px;min-width:0;display:flex}.mobile-menu-button,.sidebar-close,.sidebar-backdrop{display:none}.main-panel,.content-area,.module-page,.list-panel,.detail-card,.form-panel,.modal-panel,.dashboard-section,.calendar-panel,.day-panel,.patient-hero,.table-actions{min-width:0;max-width:100%}.table-actions .ghost-button,.table-actions .primary-button,.table-actions .danger-button{min-width:max-content;margin-top:0}.modal-panel{overscroll-behavior:contain}.modal-content,.modal-header,.modal-actions,.custom-select-trigger span,.date-picker-trigger span,.time-picker-field input,.patient-form input,.patient-form textarea,.patient-form select{min-width:0}@media (width<=1024px){.content-area{padding:22px}.dashboard-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.agenda-layout,.settings-grid,.record-photo-columns{grid-template-columns:1fr}.procedure-modal,.finance-view-modal,.stock-view-modal,.medical-record-modal{width:min(100%,920px)}.responsive-table{padding:12px;overflow-x:visible}.responsive-table table,.responsive-table thead,.responsive-table tbody,.responsive-table tr,.responsive-table th,.responsive-table td{max-width:100%;display:block;width:100%!important;min-width:0!important}.responsive-table thead{display:none}.responsive-table table{border-collapse:separate;border-spacing:0;table-layout:auto}.responsive-table tr{border:1px solid var(--line);background:#fff;border-radius:8px;padding:12px}.responsive-table tr+tr{margin-top:12px}.responsive-table td{border-bottom:1px solid var(--line);white-space:normal;word-break:break-word;grid-template-columns:minmax(110px,32%) minmax(0,1fr);align-items:start;gap:10px;padding:9px 0;display:grid;overflow:hidden;border-left:0!important}.responsive-table td:before{content:attr(data-label);color:var(--accent-dark);text-transform:uppercase;font-size:.78rem;font-weight:900}.responsive-table td:last-child{border-bottom:0}.responsive-table .actions-cell,.responsive-table .truncate-cell,.responsive-table .money-cell{white-space:normal;max-width:100%}.responsive-table .actions-cell{overflow:visible}.responsive-table .actions-cell .table-actions{flex-wrap:wrap;justify-content:flex-start;min-width:0;display:flex}}@media (width<=768px){body{min-width:0}.app-shell{width:100%;min-width:0;display:block}.sidebar{z-index:120;border-right:1px solid var(--line);background:#fffaf4;border-bottom:0;width:min(86vw,320px);max-width:100%;height:100dvh;padding:18px;transition:transform .22s;position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(-105%);box-shadow:18px 0 48px #2f2b272e}.sidebar-open .sidebar{transform:translate(0)}.sidebar-backdrop{z-index:110;background:#2f2b275c;border:0;position:fixed;inset:0}.sidebar-open .sidebar-backdrop{display:block}.sidebar-mark{justify-content:space-between;min-height:56px;margin-bottom:18px}.sidebar-mark img{width:52px;height:52px}.sidebar-close,.mobile-menu-button{flex:none;display:inline-flex}.sidebar-nav{grid-auto-columns:auto;grid-auto-flow:row;gap:8px;padding-bottom:0;display:grid;overflow-x:visible}.sidebar-link{width:100%;min-width:0}.topbar{z-index:80;gap:12px;min-height:68px;padding:12px 16px;position:sticky;top:0}.topbar strong,.topbar span{text-overflow:ellipsis;white-space:nowrap;max-width:46vw;overflow:hidden}.logout-button{flex:none;width:auto}.content-area{padding:16px}.page-toolbar{flex-direction:column;align-items:stretch;gap:12px}.page-toolbar .primary-button,.page-toolbar .ghost-button,.page-toolbar .danger-button{width:100%}.dashboard-card-grid,.placeholder-grid,.future-modules-grid,.details-grid,.info-grid,.financial-summary-grid,.finance-summary-grid,.users-summary-grid,.settings-static-grid,.anamnesis-summary-grid,.answer-grid,.question-grid,.styled-checkbox-grid,.procedure-filters,.procedures-main-filters,.finance-filters,.users-filters,.stock-filters,.agenda-filters,.patient-form,.file-upload-form{grid-template-columns:1fr!important}.span-2,.patient-form .span-2{grid-column:auto}.search-bar{grid-template-columns:1fr}.form-actions,.modal-actions{flex-wrap:wrap;gap:10px}.form-actions .primary-button,.form-actions .ghost-button,.form-actions .danger-button{width:100%}.responsive-table{padding:12px;overflow-x:visible}.responsive-table table,.responsive-table thead,.responsive-table tbody,.responsive-table tr,.responsive-table th,.responsive-table td{max-width:100%;display:block;width:100%!important;min-width:0!important}.responsive-table table{border-collapse:separate;border-spacing:0;table-layout:auto}.responsive-table thead{display:none}.responsive-table tr{border:1px solid var(--line);background:#fff;border-radius:8px;padding:12px}.responsive-table tr+tr{margin-top:12px}.responsive-table td{border-bottom:1px solid var(--line);white-space:normal;word-break:break-word;grid-template-columns:minmax(92px,35%) minmax(0,1fr);align-items:start;gap:10px;padding:9px 0;display:grid;overflow:hidden;border-left:0!important}.responsive-table td:before{content:attr(data-label);color:var(--accent-dark);text-transform:uppercase;font-size:.78rem;font-weight:900}.responsive-table td:last-child{border-bottom:0}.responsive-table .truncate-cell,.responsive-table .money-cell{white-space:normal;max-width:100%}.responsive-table .money-cell{word-break:normal}.responsive-table .actions-cell{overflow:visible}.responsive-table .actions-cell .table-actions,.table-actions{flex-wrap:wrap;justify-content:flex-start;gap:8px;min-width:0;display:flex}.responsive-table .actions-cell:before{align-self:center}.icon-button{flex:none;width:42px;height:42px}.modal-backdrop{place-items:stretch stretch;padding:12px}.modal-panel{width:100%;max-height:calc(100dvh - 24px);overflow:hidden auto}.modal-header,.modal-actions{padding:16px}.modal-header{align-items:flex-start}.modal-content{padding:16px}.calendar-panel{padding:14px;overflow:hidden}.calendar-header{gap:8px}.calendar-header h2{text-align:center;font-size:1rem}.calendar-weekdays,.calendar-grid{gap:4px}.calendar-weekdays span{font-size:.68rem}.calendar-day{min-height:54px;padding:6px 4px}.calendar-day span{font-size:.82rem}.calendar-city-indicators{gap:3px}.calendar-day .calendar-city-count{min-width:18px;height:18px;padding:0 5px;font-size:.68rem}.appointment-card,.history-item,.attachment-item,.settings-city-item,.stock-movement-item,.record-photo,.patient-file-card,.dashboard-list-item{max-width:100%;overflow:hidden}.history-item,.appointment-card,.dashboard-list-item{align-items:stretch}.record-photo,.patient-file-card{grid-template-columns:76px minmax(0,1fr)}.record-photo .table-actions,.patient-file-card .table-actions,.attachment-item .table-actions{grid-column:1/-1}.record-photo img,.photo-placeholder{width:76px;height:62px}.patient-file-card strong,.patient-file-card span,.record-photo strong,.record-photo span,.attachment-item strong,.attachment-item span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.date-picker-popover{width:auto;max-width:calc(100vw - 24px);position:fixed;inset:auto 12px 12px}.custom-select-menu,.time-picker-menu{max-width:100%}}@media (width<=480px){.content-area{padding:12px}.list-panel,.form-panel,.detail-card,.dashboard-section,.patient-hero{padding:14px}.dashboard-card-grid{grid-template-columns:1fr}.dashboard-card{grid-template-columns:38px minmax(0,1fr);padding:14px}.topbar{flex-direction:row;align-items:center}.topbar .eyebrow{display:none}.topbar strong,.topbar span{max-width:42vw}.logout-button{min-height:40px;padding:0 10px}.logout-button svg{width:16px}.responsive-table td{grid-template-columns:1fr;gap:4px}.responsive-table td:before{font-size:.74rem}.modal-header,.modal-actions{flex-direction:column}.modal-actions .ghost-button,.modal-actions .primary-button,.modal-actions .danger-button{width:100%}.calendar-day{border-radius:7px;min-height:48px}.calendar-day .calendar-city-count{min-width:16px;height:16px;padding:0 4px;font-size:.62rem}.time-picker-menu{grid-template-columns:repeat(2,minmax(0,1fr))}}
