:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;align-items:flex-start;justify-content:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{max-width:1280px;margin:0 auto;padding:2rem}.app-nav{display:flex;gap:8px;margin-bottom:20px;padding:8px 0;border-bottom:1px solid #e2e8f0}.app-nav button{padding:8px 16px;font-size:14px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;cursor:pointer}.app-nav button:hover{background:#f1f5f9}.app-nav button.active{background:#1e293b;color:#fff;border-color:#1e293b}.app-nav--doctor{justify-content:space-between;align-items:center}.app-nav-doctor-label{font-weight:600;color:#1e293b;font-size:14px}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.home-page{background:#f5f7fb;padding:48px 24px 32px;font-family:Arial,sans-serif}.home-header{text-align:center;margin-bottom:32px}.home-title{margin:0 0 8px;font-size:1.75rem;color:#1e293b;font-weight:700}.home-subtitle{color:#64748b;margin:0;font-size:15px;font-weight:500}.home-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1100px;margin:0 auto}.login-container{display:flex;justify-content:center;align-items:center;width:100%}.home-card{display:block;width:100%;text-align:left;padding:32px 28px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.home-card:hover{border-color:#cbd5e1;transform:translateY(-4px);box-shadow:0 10px 22px #00000014}.home-card:focus-visible{outline:2px solid #1e293b;outline-offset:2px}.home-card-title{margin:0 0 8px;font-size:1.15rem;color:#1e293b;font-weight:700}.home-card-subtitle{margin:0;font-size:14px;color:#64748b;line-height:1.4}@media(max-width:900px){.home-cards{grid-template-columns:1fr}}.dashboard-page{min-height:100vh;background:#f5f7fb;padding:24px;font-family:Arial,sans-serif}.dashboard-container{max-width:900px;margin:0 auto}.dashboard-title{margin:0 0 24px;font-size:1.75rem;color:#1e293b}.dashboard-controls{margin-bottom:24px}.dashboard-controls label{display:block;margin-bottom:6px;font-size:13px;color:#555}.dashboard-controls input{padding:10px;border:1px solid #d7dce5;border-radius:8px;font-size:14px}.dashboard-message.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;padding:12px 16px;border-radius:10px;margin-bottom:16px}.dashboard-loading{padding:24px;text-align:center;color:#64748b}.dashboard-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px}.dashboard-card{background:#fff;border-radius:12px;padding:20px;border:1px solid #e2e8f0}.dashboard-card-label{font-size:14px;color:#64748b}.dashboard-card-value{font-size:28px;font-weight:700;margin-top:8px;color:#1e293b}.dashboard-section{margin-bottom:28px}.dashboard-section-heading{font-size:1.1rem;font-weight:600;color:#334155;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.dashboard-status-grid,.dashboard-location-grid{display:grid;gap:10px}.dashboard-status-item,.dashboard-location-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-radius:10px;border:1px solid #e2e8f0}.dashboard-status-label,.dashboard-location-name{font-size:14px;color:#475569}.dashboard-status-value,.dashboard-location-trays{font-weight:600;font-size:16px;color:#1e293b}@media(max-width:700px){.dashboard-summary{grid-template-columns:1fr}}.labels-page{min-height:100vh;background:#f5f7fb;padding:24px;font-family:Arial,sans-serif}.labels-container{max-width:800px;margin:0 auto}.labels-title{margin:0 0 8px;font-size:1.5rem;color:#1e293b}.labels-subtitle{color:#64748b;margin:0 0 24px;font-size:14px}.labels-controls label{display:block;margin-bottom:6px;font-size:13px;color:#555}.labels-controls input[type=date]{padding:10px;border:1px solid #d7dce5;border-radius:8px;font-size:14px}.labels-filters{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.labels-filter-search{flex:1;min-width:160px;padding:10px 12px;border:1px solid #d7dce5;border-radius:8px;font-size:14px}.labels-filter-select{padding:10px 12px;border:1px solid #d7dce5;border-radius:8px;font-size:14px;min-width:160px}.labels-message{background:#eef4ff;border:1px solid #cfe0ff;color:#234;padding:12px 16px;border-radius:10px;margin-bottom:16px;font-size:14px}.labels-loading,.labels-empty{background:#fff;border-radius:12px;padding:32px;text-align:center;color:#64748b}.labels-toolbar{display:flex;align-items:center;gap:16px;margin-bottom:16px;flex-wrap:wrap}.labels-selected{font-size:14px;color:#475569;font-weight:500}.labels-generate-btn{padding:10px 20px;font-size:14px;border-radius:8px;border:none;background:#1e293b;color:#fff;cursor:pointer}.labels-generate-btn:hover:not(:disabled){background:#334155}.labels-generate-btn:disabled{background:#cbd5e1;cursor:not-allowed}.labels-list{display:flex;flex-direction:column;gap:0;background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden}.labels-list-header{padding:12px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.labels-checkbox-wrap{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#475569}.labels-row{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-bottom:1px solid #e2e8f0}.labels-row:last-child{border-bottom:none}.labels-row.selected{background:#f0f9ff}.labels-row .labels-checkbox-wrap{flex-shrink:0;margin-top:2px}.labels-row-body{flex:1;min-width:0}.labels-row-name{font-weight:600;font-size:15px;color:#1e293b;margin-bottom:4px}.labels-row-meta{font-size:13px;color:#64748b;margin-bottom:2px}.trello-updated-badge{color:#059669;font-weight:500}.labels-row-summary{font-size:13px;color:#475569;margin-bottom:2px}.labels-row-summary.trello-preview ul{margin:0;padding-left:1.2rem;font-size:12px}.labels-row-address{font-size:12px;color:#64748b;margin-top:4px}.labels-row-status{font-size:12px;color:#64748b;margin-top:2px}.schedule-page{min-height:100vh;width:100%;background:#f5f7fb;padding:24px;font-family:Arial,sans-serif;box-sizing:border-box}.schedule-container{width:100%;max-width:1200px;margin:0 auto;box-sizing:border-box}.page-date-title{font-size:2.25rem;font-weight:700;color:#1e293b;margin:0 0 24px;letter-spacing:-.02em}.top-bar{display:grid;grid-template-columns:1fr 1fr auto;gap:16px;margin-bottom:24px;background:#fff;padding:16px;border-radius:12px;width:100%;box-sizing:border-box}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;width:100%;box-sizing:border-box}.summary-card{background:#fff;border-radius:12px;padding:20px;min-width:0;box-sizing:border-box}.summary-label{color:#666;font-size:14px}.summary-value{font-size:28px;font-weight:700;margin-top:8px}.message{background:#eef4ff;border:1px solid #cfe0ff;color:#234;padding:12px 16px;border-radius:10px;margin-bottom:16px}.empty-box{background:#fff;border-radius:12px;padding:40px;text-align:center;width:100%;box-sizing:border-box}.location-sections{display:flex;flex-direction:column;gap:32px}.location-section{display:flex;flex-direction:column;gap:12px}.location-section-heading{font-size:1.125rem;font-weight:700;color:#334155;margin:0;padding:10px 14px;background:#e2e8f0;border-radius:10px;border-left:4px solid #64748b}.location-section-cards{display:flex;flex-direction:column;gap:20px}.patient-card{background:#fff;border-radius:14px;border:2px solid #94a3b8;padding:24px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;gap:20px}.patient-card-header{display:flex;flex-direction:column;gap:14px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.patient-card-middle{display:flex;flex-direction:column;gap:12px}.patient-card-bottom{display:flex;flex-direction:column;gap:16px;padding-top:16px;border-top:1px solid #e2e8f0}.field-block{margin:0}.field-block label{margin-bottom:6px}.patient-header.grid{display:grid;grid-template-columns:1fr 1fr 1fr auto auto auto;gap:12px;margin:0}.patient-form-row{display:grid;gap:12px;align-items:end;margin:0}.patient-form-row-1{display:grid;grid-template-columns:2fr 1.25fr;gap:12px}.patient-form-row-2{display:grid;grid-template-columns:1fr 1.25fr;gap:12px}.archs-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:12px}.arch-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:12px;display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end}.arch-section .arch-label{width:100%;font-weight:600;font-size:13px;color:#475569;margin-bottom:0}.arch-section>select{min-width:100px}.arch-section>div{min-width:80px}.arch-section label{margin-bottom:4px}.arch-trays-none{font-size:14px;color:#64748b;align-self:center}.row-trays{font-size:14px;color:#475569;margin:0}.aligner-dates-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:12px}.aligner-dates-row label{display:block;margin-bottom:4px;font-size:13px;color:#475569}.aligner-dates-row input{padding:8px 10px;border:1px solid #d7dce5;border-radius:6px;font-size:14px}.schedule-page label{display:block;margin-bottom:6px;font-size:13px;color:#555}.schedule-page input,.schedule-page select,.schedule-page textarea,.schedule-page button{width:100%;padding:10px;border:1px solid #d7dce5;border-radius:8px;box-sizing:border-box;font-size:14px}.schedule-page textarea{min-height:90px;resize:vertical}.button-row{display:flex;gap:8px;align-items:end}.button-row button{width:auto;cursor:pointer;border-radius:8px;padding:10px 16px;font-size:14px;border:1px solid transparent}.button-row .btn-reload{background:#e8f0ff;border-color:#b7c9f2;color:#1e40af}.button-row .btn-reload:hover:not(:disabled){background:#dce8ff}.button-row .btn-add-patient{background:#d7e7ff;border-color:#b7c9f2;color:#1e40af}.button-row .btn-add-patient:hover:not(:disabled){background:#c9ddff}.button-row .btn-save-day{background:#2f5bd3;border-color:#2f5bd3;color:#fff}.button-row .btn-save-day:hover:not(:disabled){background:#244bb3;border-color:#244bb3}.button-row button:disabled{opacity:.7;cursor:not-allowed}.delete-box{display:flex;flex-direction:column;justify-content:end}.delete-button{background:#b42318;color:#fff;border:none;cursor:pointer}@media(max-width:1100px){.patient-header.grid{grid-template-columns:1fr 1fr 1fr}.archs-row{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}.top-bar{grid-template-columns:1fr}}@media(max-width:700px){.patient-header.grid,.summary-grid{grid-template-columns:1fr}.button-row{flex-direction:column}}.dashboard-split{display:flex;flex-direction:row;flex-wrap:nowrap;gap:24px;align-items:flex-start;margin-top:0;width:100%}.dashboard-split-left,.dashboard-split-right{min-width:0;flex-shrink:0;transition:flex-basis .22s ease,max-width .22s ease}.dashboard-split.is-idle .dashboard-split-left{flex:0 0 20%;max-width:20%}.dashboard-split.is-idle .dashboard-split-right{flex:0 0 80%;max-width:80%}.dashboard-split.is-adding .dashboard-split-left{flex:0 0 65%;max-width:65%}.dashboard-split.is-adding .dashboard-split-right{flex:0 0 35%;max-width:35%}.new-patient-placeholder{background:#fff;border:2px dashed #cbd5e1;border-radius:12px;padding:28px 20px;text-align:center;color:#64748b;font-size:13px}.new-patient-placeholder p{margin:0}.new-patient-panel{display:flex;flex-direction:column;gap:14px}.new-patient-panel-title{font-size:.9rem;font-weight:600;color:#334155;margin:0}.new-patient-form.patient-card{padding:14px}.new-patient-actions{display:flex;gap:8px;flex-wrap:wrap}.new-patient-actions button{width:auto;padding:8px 16px;cursor:pointer;font-size:13px;border-radius:8px;border:1px solid #d7dce5}.new-patient-actions .btn-save{background:#1e40af;color:#fff;border-color:#1e40af}.new-patient-actions .btn-clear{background:#f1f5f9;color:#475569}.new-patient-actions .btn-cancel{background:#fff;color:#475569}.existing-patients-panel{display:flex;flex-direction:column;gap:14px}.existing-patients-panel-title{font-size:.9rem;font-weight:600;color:#334155;margin:0}.existing-patients-empty{background:#fff;border-radius:12px;padding:20px;color:#64748b;font-size:13px}.existing-patients-empty p{margin:0}.patient-accordion-row{background:var(--status-row-bg, #ffffff);border-radius:10px;border:1px solid var(--status-row-border, #e2e8f0);border-left:6px solid var(--status-row-border, #e2e8f0);overflow:hidden}.patient-accordion-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;padding:12px 14px;background:none;border:none;cursor:pointer;font-size:13px;color:#1e293b;font-family:inherit;transition:background .15s}.patient-accordion-trigger:hover{background:var(--status-expanded-tint, #f8fafc)}.patient-accordion-trigger[aria-expanded=true]{background:var(--status-expanded-tint, #f1f5f9);font-weight:600}.patient-accordion-name{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-accordion-note{color:#64748b;font-weight:400}.patient-status-pill{display:inline-flex;align-items:center;white-space:nowrap;font-size:11px;line-height:1;padding:6px 10px;border-radius:999px;background:var(--status-pill-bg, #e2e8f0);color:var(--status-pill-text, #334155);border:1px solid var(--status-row-border, #cbd5e1);font-weight:600}.patient-accordion-content{padding:0 14px 14px;border-top:1px solid var(--status-row-border, #e2e8f0);background:var(--status-expanded-tint, #ffffff)}.patient-accordion-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;padding:8px 4px 0}.patient-accordion-actions .btn-delete-inline{width:auto;flex:0 0 auto;padding:6px 14px;font-size:12px;border-radius:999px;border:none;background:#dc2626;color:#fff;cursor:pointer}.patient-accordion-actions .btn-delete-inline:hover{background:#b91c1c}.patient-accordion-actions .reschedule-inline-group{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;flex:0 0 auto}.patient-accordion-actions .reschedule-label{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#374151;flex:0 0 auto}.patient-accordion-actions .reschedule-date-input,.patient-accordion-actions .reschedule-label input[type=date]{width:160px;min-width:150px;max-width:170px;padding:4px 8px;border:1px solid #d1d5db;border-radius:6px;font-size:12px;box-sizing:border-box}.patient-accordion-actions .btn-reschedule-inline{width:auto;flex:0 0 auto;padding:6px 14px;font-size:12px;border-radius:999px;border:1px solid #2563eb;background:#2563eb;color:#fff;cursor:pointer}.patient-accordion-actions .btn-reschedule-inline:hover:not(:disabled){background:#1d4ed8}.patient-accordion-actions .btn-reschedule-inline:disabled{opacity:.6;cursor:not-allowed}.patient-accordion-actions .reschedule-error{font-size:12px;color:#dc2626;flex:0 0 auto}.patient-accordion-content .patient-card{margin-top:14px;padding:14px;box-shadow:none;border:1px solid #e2e8f0;border-top:3px solid var(--status-row-border, #e2e8f0)}.dashboard-split .location-section-heading{font-size:1rem;padding:8px 12px}.dashboard-split .patient-card-header label,.dashboard-split .arch-section label,.dashboard-split .field-block label{font-size:12px;margin-bottom:4px}.dashboard-split .patient-card-header input,.dashboard-split .patient-card-header select,.dashboard-split .patient-card input,.dashboard-split .patient-card select,.dashboard-split .patient-card textarea,.dashboard-split .arch-section input,.dashboard-split .arch-section select,.dashboard-split .aligner-dates-row input{font-size:13px;padding:8px 10px}.dashboard-split .patient-header.grid{gap:10px}.dashboard-split .arch-section .arch-label,.dashboard-split .row-trays,.dashboard-split .aligner-dates-row label{font-size:12px}@media(max-width:900px){.dashboard-split{flex-direction:column;flex-wrap:wrap}.dashboard-split-left,.dashboard-split-right{flex:1 1 auto!important;max-width:none!important;width:100%}}.tp-page{min-height:100vh;background:#f5f7fb;padding:24px;font-family:Arial,sans-serif;color:#1e293b}.tp-container{max-width:1200px;margin:0 auto}.tp-back{background:none;border:none;color:#2563eb;cursor:pointer;font-size:14px;padding:0 0 12px}.tp-back:hover{text-decoration:underline}.tp-header-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}.tp-title{margin:0;font-size:1.5rem;color:#1e293b;flex:1 1 auto;min-width:0}.tp-page .tp-header-row .tp-btn-sync,.tp-page .tp-header-row button.tp-btn-sync{display:inline-flex!important;align-items:center;justify-content:center;align-self:flex-start;flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important;padding:8px 14px;font-size:13px;font-weight:600;border-radius:8px;border:1px solid #2563eb;background:#fff!important;color:#2563eb!important;cursor:pointer;white-space:nowrap;box-sizing:border-box}.tp-page .tp-header-row .tp-btn-sync:hover:not(:disabled),.tp-page .tp-header-row button.tp-btn-sync:hover:not(:disabled){background:#eff6ff!important}.tp-page .tp-header-row .tp-btn-sync:disabled,.tp-page .tp-header-row button.tp-btn-sync:disabled{opacity:.65;cursor:not-allowed}.tp-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:16px}.tp-search{flex:1;min-width:200px;padding:10px 12px;border:1px solid #d7dce5;border-radius:8px;font-size:14px}.tp-filter{min-width:140px;padding:10px 12px;border:1px solid #d7dce5;border-radius:8px;font-size:14px}.tp-message{background:#eef4ff;border:1px solid #cfe0ff;color:#234;padding:12px 16px;border-radius:10px;margin-bottom:16px;font-size:14px}.tp-tabs-bar{display:block;width:100%;margin:12px 0 16px;padding:0 0 12px;border-bottom:1px solid #e2e8f0;box-sizing:border-box}.tp-page .tp-tabs-bar .tp-tabs,.tp-page .tp-tabs-bar .tp-tabs[role=tablist]{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:stretch;align-content:flex-start;justify-content:flex-start;gap:12px;width:100%;max-width:100%;margin:0!important;padding:0!important;list-style:none;box-sizing:border-box}.tp-page .tp-tabs-bar .tp-tabs .tp-tab,.tp-page .tp-tabs-bar button.tp-tab{display:inline-flex!important;flex:0 0 auto!important;flex-grow:0!important;flex-shrink:0!important;width:auto!important;max-width:none!important;align-self:center;align-items:center;justify-content:center;box-sizing:border-box;min-width:160px;min-height:56px;padding:0 20px!important;margin:0!important;border:1px solid #cbd5e1;border-radius:8px;background:#fff!important;font-size:14px;font-weight:600;line-height:1.3;cursor:pointer;color:#0f172a!important;white-space:nowrap}.tp-page .tp-tabs-bar .tp-tabs .tp-tab:hover:not(.tp-tab--active){background:#f1f5f9!important}.tp-page .tp-tabs-bar .tp-tabs .tp-tab.tp-tab--active,.tp-page .tp-tabs-bar .tp-tabs .tp-tab--active{background:#1e293b!important;color:#fff!important;border-color:#1e293b!important}.tp-page .tp-tabs-bar .tp-tabs .tp-tab.tp-tab--active:hover{background:#334155!important;border-color:#334155!important;color:#fff!important}.tp-tab-text{display:inline;text-align:center}.tp-tab-count{font-weight:600;font-variant-numeric:tabular-nums}.tp-loading,.tp-empty{background:#fff;border-radius:12px;padding:32px;text-align:center;color:#64748b;border:1px solid #e2e8f0}.tp-loading-inline{padding:16px;color:#64748b;font-size:14px}.tp-table-wrap{overflow-x:auto;background:#fff;border-radius:12px;border:1px solid #e2e8f0}.tp-table{width:100%;border-collapse:collapse;font-size:14px}.tp-table th,.tp-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #ebeef5;vertical-align:top}.tp-table th{background:#f8fafc;font-weight:600;color:#475569;font-size:.8rem;text-transform:uppercase;letter-spacing:.02em}.tp-cell-comments{max-width:280px;word-break:break-word}.tp-row--clickable{cursor:pointer;transition:background .15s ease}.tp-row--clickable:hover{background:#f1f5f9}.tp-row--clickable.tp-row--expanded{background:#f8fafc}.tp-cell-stage{vertical-align:middle}.tp-stage-inner{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%}.tp-stage-inner .tp-select{flex:1 1 auto;min-width:0}.tp-row-chevron{display:inline-block;width:8px;height:8px;border-right:2px solid #64748b;border-bottom:2px solid #64748b;transform:rotate(-45deg);flex:0 0 auto;transition:transform .2s ease;align-self:center}.tp-row--expanded .tp-row-chevron{transform:rotate(45deg)}.tp-select{width:100%;min-width:180px;padding:8px 10px;border:1px solid #d7dce5;border-radius:8px;font-size:13px;background:#fff;cursor:pointer}.tp-detail-row td{background:#fafbfc;border-bottom:1px solid #e2e8f0}.tp-detail{padding:16px 8px 0;max-width:100%}.tp-detail-actions{display:flex;justify-content:flex-end;margin-bottom:12px}.tp-section{border:1px solid #e2e8f0;border-radius:10px;padding:16px;margin-bottom:16px;background:#fff}.tp-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.tp-section-title{margin:0 0 12px;font-size:1rem;color:#1e293b}.tp-section-head .tp-section-title{margin:0}.tp-label{display:block;font-size:13px;color:#475569;margin-bottom:6px;margin-top:10px}.tp-label:first-of-type{margin-top:0}.tp-textarea,.tp-input{width:100%;border:1px solid #d7dce5;border-radius:8px;padding:10px 12px;font-size:14px;font-family:inherit;box-sizing:border-box}.tp-textarea{resize:vertical;min-height:72px}.tp-btn-save{margin-top:12px;background:#0f172a;color:#fff;border:none;border-radius:8px;padding:10px 18px;font-size:14px;cursor:pointer}.tp-proposal-actions .tp-btn-save{margin-top:0}.tp-btn-save:disabled{opacity:.6;cursor:not-allowed}.tp-btn-secondary{background:#fff;color:#1e293b;border:1px solid #cbd5e1;border-radius:8px;padding:8px 14px;font-size:13px;cursor:pointer}.tp-btn-secondary:hover{background:#f8fafc}.tp-muted{color:#94a3b8;font-size:14px;margin:0 0 8px}.tp-refinements-subsection{margin-top:20px;padding-top:16px;border-top:1px solid #e2e8f0}.tp-subsection-title{margin:0 0 12px;font-size:.95rem;font-weight:600;color:#1e293b}.tp-page .tp-refinements-add{display:inline-flex!important;width:auto!important;margin-bottom:12px}.tp-refinement-card{border:1px solid #e2e8f0;border-radius:10px;padding:14px;margin-bottom:12px;background:#f8fafc}.tp-save-refinements{margin-top:8px}.tp-proposal-card{border:1px solid #e2e8f0;border-radius:10px;padding:14px;margin-bottom:12px;background:#fafbfc}.tp-proposal-approved{border-color:#22c55e;background:#f0fdf4}.tp-proposal-head{margin-bottom:8px}.tp-proposal-badge{display:inline-block;font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;background:#e2e8f0;color:#475569}.tp-proposal-approved .tp-proposal-badge{background:#22c55e;color:#fff}.tp-sim-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.tp-sim-row .tp-input{flex:1;min-width:200px}.tp-sim-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.tp-btn-preview{background:#fff;color:#1e293b;border:1px solid #cbd5e1;border-radius:8px;padding:8px 14px;font-size:13px;cursor:pointer;white-space:nowrap}.tp-page .tp-sim-row .tp-btn-preview{display:inline-flex!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important}.tp-btn-preview:hover:not(:disabled){background:#f8fafc}.tp-btn-preview:disabled{opacity:.5;cursor:not-allowed}.tp-open-link{font-size:14px;color:#2563eb;white-space:nowrap}.tp-sim-modal-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;background:#0f172a73}.tp-sim-modal{display:flex;flex-direction:column;width:min(1200px,92vw);height:min(800px,85vh);max-height:85vh;background:#fff;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 25px 50px -12px #0f172a40;overflow:hidden;box-sizing:border-box}.tp-sim-modal-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #e2e8f0;flex-shrink:0}.tp-sim-modal-title{margin:0;font-size:1.05rem;font-weight:600;color:#1e293b}.tp-sim-modal-header-actions{display:flex;align-items:center;gap:10px}.tp-page .tp-sim-modal .tp-sim-modal-open-tab{display:inline-flex!important;width:auto!important;flex:0 0 auto}.tp-sim-modal-close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#64748b;font-size:22px;line-height:1;cursor:pointer}.tp-sim-modal-close:hover{background:#f8fafc;color:#0f172a}.tp-sim-modal-fallback{margin:0;padding:10px 16px;font-size:13px;color:#92400e;background:#fffbeb;border-bottom:1px solid #fde68a;flex-shrink:0}.tp-sim-modal-body{position:relative;flex:1 1 0%;min-height:0;padding:12px 16px 16px;display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden}.tp-sim-modal-iframe-wrap{position:relative;flex:1 1 0%;min-height:0;display:flex;flex-direction:column}.tp-sim-modal-loading{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#f8fafceb;color:#64748b;font-size:14px}.tp-sim-preview-iframe{width:100%;height:100%;min-height:0;border:0;border-radius:8px;background:#f1f5f9}.tp-proposal-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:14px}.tp-proposal-actions button,.tp-proposal-actions .btn{height:44px;margin-top:0;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;box-sizing:border-box}.tp-btn-approve{background:#eef2ff;color:#3730a3;border:1px solid #c7d2fe;border-radius:8px;padding:8px 14px;font-size:13px;cursor:pointer}.tp-btn-approved{background:#22c55e;color:#fff;border:none;border-radius:8px;padding:8px 14px;font-size:13px;cursor:pointer}.tp-btn-danger{background:#fff;color:#b91c1c;border:1px solid #fecaca;border-radius:8px;padding:8px 14px;font-size:13px;cursor:pointer}.tp-btn-danger:hover{background:#fef2f2}.tp-back--doctor{font-size:13px;font-weight:500;padding-bottom:8px}.tp-readonly-block{margin-bottom:12px;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;white-space:pre-wrap;min-height:1.5em;font-size:14px;line-height:1.45;color:#334155}.tp-readonly-block--inline{flex:1;min-width:0;margin-bottom:0;word-break:break-word}.tp-stage-readonly{font-size:13px;color:#334155;font-weight:500}.tp-comments-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:8px}.tp-page .tp-comments-actions button{height:44px;display:inline-flex!important;align-items:center;justify-content:center;padding:0 18px!important;box-sizing:border-box;margin-top:0;width:auto!important;min-width:0!important;max-width:none!important}.tp-sim-readonly-link-wrap{flex:1;min-width:0;display:flex;align-items:center}.tp-sim-external-link{color:#2563eb;font-weight:500;font-size:14px;text-decoration:none}.tp-sim-external-link:hover{text-decoration:underline}
