:root{--sisac-red:#c41e3a;--sisac-red-dark:#9b1830;--sisac-bg:#cfc9bb;--sisac-window:#ece9d8;--sisac-face:#d4d0c8;--sisac-header:#4a6ea9;--sisac-row-alt:#e8f4dc;--sisac-selected:#316ac5;--sisac-selected-orange:#e07040;--sisac-vago:#f7c6d8;--sisac-nao-conf:#f0a05a;--sisac-confirmado:#9ad89a;--sisac-atendido:#7eb6e8;--sisac-border-dark:#404040;--sisac-border-light:#fff;--sisac-inset:#808080;--sisac-text:#000;--sisac-link:#0000ee}*{box-sizing:border-box}body,html{margin:0;height:100%;background:var(--sisac-bg);color:var(--sisac-text);font-family:Tahoma,Segoe UI,Verdana,sans-serif;font-size:12px}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit;font-size:12px}.app-root{min-height:100vh;display:flex;flex-direction:column}.app-titlebar{background:linear-gradient(180deg,#d32f2f 0,var(--sisac-red) 45%,var(--sisac-red-dark) 100%);color:#fff;height:28px;display:flex;align-items:center;padding:0 8px;font-weight:700;letter-spacing:.4px;text-shadow:0 1px 0 rgba(0,0,0,.35);justify-content:space-between;flex-shrink:0}.app-titlebar .brand{font-size:13px;display:inline-flex;align-items:center;gap:8px;height:100%}.app-titlebar .brand-mark{height:18px;width:auto;color:#000;display:block;flex-shrink:0}.app-titlebar .win-btns{display:flex;gap:4px}.app-titlebar .win-btns span{background:var(--sisac-face);color:#000;border-color:#fff #404040 #404040 #fff;border-style:solid;border-width:1px;width:18px;height:16px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700}.app-menubar{background:var(--sisac-face);border-bottom:1px solid var(--sisac-inset);display:flex;gap:2px;padding:2px 6px;flex-shrink:0}.app-menubar a{padding:4px 10px;border:1px solid transparent}.app-menubar a:hover{border-color:#fff #808080 #808080 #fff;background:#e6e3d5}.app-menubar a.active{background:#fff;border-color:#808080 #fff #fff #808080;font-weight:700}.app-body{flex:1 1;padding:8px}.app-body,.window{min-height:0;display:flex}.window{background:var(--sisac-window);border-color:#fff #404040 #404040 #fff;border-style:solid;border-width:2px;flex-direction:column;width:100%;box-shadow:2px 2px 0 rgba(0,0,0,.15)}.window-title{background:var(--sisac-red);color:#fff;font-weight:700;font-size:13px;padding:4px 8px;text-transform:uppercase;letter-spacing:.5px}.window-body{padding:6px;display:flex;flex-direction:column;gap:6px;min-height:0;flex:1 1}.toolbar{display:flex;flex-wrap:wrap;border-color:#808080 #fff #fff #808080;border-style:solid;border-width:1px;padding:4px}.tb-btn,.toolbar{gap:4px;align-items:center;background:var(--sisac-face)}.tb-btn{border-color:#fff #404040 #404040 #fff;border-style:solid;border-width:1px;padding:4px 8px;cursor:pointer;display:inline-flex;min-height:26px}.tb-btn:active{border-color:#404040 #fff #fff #404040}.tb-btn:disabled{opacity:.5;cursor:default}.tb-btn.danger{color:#9b0000}.tb-btn.primary{font-weight:700}.grid-wrap{border-left:1px solid var(--sisac-inset);border-top:1px solid var(--sisac-inset);border-right:1px solid #fff;border-bottom:1px solid #fff;overflow:auto;background:#fff;flex:1 1;min-height:140px}table.sisac-grid{width:100%;border-collapse:collapse;font-size:11px}table.sisac-grid th{background:var(--sisac-header);color:#fff;font-weight:600;text-align:left;padding:3px 6px;position:-webkit-sticky;position:sticky;top:0;white-space:nowrap;border-right:1px solid #6d89bc}table.sisac-grid td{padding:2px 6px;border-bottom:1px solid #ddd;white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis}table.sisac-grid tbody tr{cursor:pointer;background:#fff}table.sisac-grid tbody tr:nth-child(2n){background:var(--sisac-row-alt)}table.sisac-grid tbody tr.selected{background:var(--sisac-selected)!important;color:#fff}table.sisac-grid tbody tr.selected-orange{background:var(--sisac-selected-orange)!important;color:#fff}table.sisac-grid td.codigo{color:#c00;font-weight:700}table.sisac-grid tr.selected td.codigo{color:#ffd}table.sisac-grid td.descr{color:#0033cc}table.sisac-grid tr.selected td.descr{color:#fff}.status-vago{background:var(--sisac-vago)!important}.status-nao{background:var(--sisac-nao-conf)!important}.status-conf{background:var(--sisac-confirmado)!important}.status-atend{background:var(--sisac-atendido)!important}.form-panel{background:var(--sisac-window);border:1px solid #808080;padding:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px 16px;gap:4px 16px}.form-grid.cols-3{grid-template-columns:1fr 1fr 1fr}.field{display:flex;align-items:center;gap:6px;min-height:22px}.field.stack{flex-direction:column;align-items:stretch}.field label{min-width:110px;text-align:right;flex-shrink:0}.field input,.field select,.field textarea{flex:1 1;border-color:#808080 #fff #fff #808080;border-style:solid;border-width:1px;background:#fff;padding:2px 4px;min-width:0}.field textarea{min-height:72px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:1px dotted #000}.tabs{display:flex;gap:0;border-bottom:1px solid #808080}.tabs button{background:var(--sisac-face);border:1px solid #808080;border-bottom:none;padding:5px 12px;margin-right:2px;cursor:pointer;position:relative;top:1px}.tabs button.active{background:var(--sisac-window);font-weight:700;padding-bottom:6px}.status-line{display:flex;justify-content:space-between;padding:2px 4px;font-size:11px}.msg{padding:6px 8px;border:1px solid #808080;background:#fff8dc}.msg.error{background:#fdd;color:#900}.msg.ok{background:#dfd;color:#060}.agenda-layout{display:grid;grid-template-columns:minmax(0,250px) minmax(0,1fr);grid-template-rows:auto 1fr auto;grid-gap:6px;gap:6px;height:100%;min-height:0}.agenda-side{grid-row:1/4;display:flex;flex-direction:column;gap:6px;min-width:0}.agenda-side .field{flex-direction:column;align-items:stretch}.agenda-side .field label{text-align:left;min-width:0}.agenda-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:6px;gap:6px;min-width:0}.card{padding:6px}.card,.doctor-card{background:#fff;border:1px solid #808080}.doctor-card{display:flex;gap:8px;align-items:flex-start;padding:8px;min-width:0;width:100%;overflow:hidden}.doctor-card>div{min-width:0;flex:1 1;overflow:hidden}.doctor-avatar{width:36px;height:36px;flex-shrink:0;background:#d0d0d0;border:1px solid #808080;display:flex;align-items:center;justify-content:center;font-size:22px;color:#666}.action-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:4px;gap:4px}.action-grid button{min-height:42px;font-weight:600}.week-table td,.week-table th{border:1px solid #bbb;padding:2px 4px;text-align:center}.week-table th{background:#eee}.mini-cal{background:#fff;border:1px solid #808080;padding:4px}.mini-cal .cal-head{display:flex;justify-content:space-between;font-weight:700;margin-bottom:4px}.mini-cal .days{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:1px;gap:1px;text-align:center}.mini-cal .days span{padding:3px 0;cursor:pointer}.mini-cal .days span.today{outline:1px solid var(--sisac-red)}.mini-cal .days span.sel{background:var(--sisac-selected);color:#fff}.mini-cal .days .dow{font-weight:700;cursor:default}.modal-back{position:fixed;inset:0;background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;z-index:50}.modal{width:min(720px,96vw);max-height:90vh;overflow:auto}.check-row{display:flex;flex-wrap:wrap;gap:8px 14px;padding:4px 0}.hours-table input{width:52px;text-align:center}.doctor-picker{position:relative;flex:1 1;min-width:0;max-width:100%;width:100%}.doctor-picker-btn{width:100%;max-width:100%;display:block;text-align:left;background:#fff;border-color:#808080 #fff #fff #808080;border-style:solid;border-width:1px;padding:3px 6px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doctor-picker-menu{position:fixed;z-index:80;background:#fff;border:1px solid #808080;box-shadow:2px 2px 8px rgba(0,0,0,.28);display:flex;flex-direction:column;min-height:0;overflow:hidden}.doctor-picker-menu input{margin:4px;border:1px solid #808080;padding:3px 4px;flex-shrink:0}.doctor-picker-list{overflow:auto;flex:1 1;min-height:120px;max-height:260px}.doctor-picker-list button{display:flex;flex-direction:column;align-items:flex-start;width:100%;border:0;background:#fff;padding:4px 8px;cursor:pointer;text-align:left}.doctor-picker-list button strong{white-space:normal;word-break:break-word}.doctor-picker-list button span{color:#555;font-size:10px}.doctor-picker-list button.sel,.doctor-picker-list button:hover{background:#316ac5;color:#fff}.doctor-picker-list button.sel span,.doctor-picker-list button:hover span{color:#ddd}.doctor-picker-empty{padding:8px;color:#666}@media (max-width:980px){.agenda-layout{grid-template-columns:1fr;grid-template-rows:auto}.agenda-side{grid-row:auto}.agenda-top,.form-grid,.form-grid.cols-3{grid-template-columns:1fr}.field label{text-align:left;min-width:90px}}