@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";:root{color:#142434;font-synthesis:none;--navy:#071d30;--navy-2:#0d2b42;--teal:#087f75;--teal-dark:#05645d;--cyan:#dff7f7;--line:#dce7ec;--muted:#6b7d89;--white:#fff;--shadow:0 18px 45px #14324614;background:#f3f7f9;font-family:DM Sans,Segoe UI,sans-serif}:focus-visible{outline-offset:2px;outline:3px solid #087f7552}button,input,select,textarea,a{scroll-margin:90px}button:disabled{cursor:not-allowed;opacity:.58;transform:none!important}table thead th{z-index:2;background:#f4f8f9;position:sticky;top:0}.breadcrumbs{align-items:center;gap:6px;text-transform:none!important;letter-spacing:0!important;display:flex!important}.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs b{color:#9eb1b9;font-weight:400}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand strong{font-family:Manrope,sans-serif}a{color:inherit}.app-shell{grid-template-columns:272px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{z-index:30;color:#dbe9ef;background:linear-gradient(165deg,#061b2d,#0b3045 68%,#07544f);flex-direction:column;height:100vh;padding:24px 18px 18px;display:flex;position:sticky;inset:0 auto 0 0;box-shadow:12px 0 30px #071d3014}.brand{border-bottom:1px solid #ffffff1a;align-items:center;gap:12px;padding:0 7px 22px;display:flex}.brand-mark,.login-brand>span{color:#042739;background:linear-gradient(135deg,#7de4dd,#d8ffff);border-radius:13px;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 8px 22px #3fd7cd33}.brand div,.login-brand div{gap:2px;display:grid}.brand strong{color:#fff;font-size:16px}.brand small{color:#8fb1c0;letter-spacing:.06em;text-transform:uppercase;font-size:11px}.identity{background:#ffffff0d;border:1px solid #ffffff14;border-radius:14px;align-items:center;gap:11px;margin:20px 5px 14px;padding:12px;display:flex}.avatar{color:#06354a;background:#a8ece7;border-radius:50%;place-items:center;min-width:36px;height:36px;font-weight:800;display:grid}.identity div{gap:1px;display:grid;overflow:hidden}.identity strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.identity div span{color:#91b3bf;font-size:11px}.sidebar nav{gap:4px;padding:5px 0 14px;display:grid;overflow-y:auto}.sidebar nav a{color:#afc6d0;border-radius:11px;align-items:center;gap:12px;min-height:43px;padding:0 13px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.sidebar nav a:hover{color:#fff;background:#ffffff12;transform:translate(2px)}.sidebar nav a.active{color:#061f30;background:linear-gradient(100deg,#b9efea,#e6ffff);box-shadow:0 8px 20px #087f752e}.logout-button{color:#d8e7ec;background:#ffffff0d;border:1px solid #ffffff21;border-radius:11px;justify-content:center;align-items:center;gap:9px;min-height:42px;margin-top:auto;font-weight:600;display:flex}.logout-button:hover{background:#ffffff1c}.workspace{min-width:0}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe0;align-items:center;gap:14px;height:72px;padding:0 32px;display:flex}.topbar>div{gap:1px;margin-right:auto;display:grid}.topbar span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.topbar strong{font-size:15px}.content{padding:30px 32px 60px}.module-page{max-width:1480px;margin:auto;animation:.35s both rise}@keyframes rise{0%{opacity:0;transform:translateY(7px)}}button,.primary-button{background:var(--teal);color:#fff;border:0;border-radius:10px;padding:10px 15px;font-weight:700;transition:all .18s}button:hover,.primary-button:hover{background:var(--teal-dark);transform:translateY(-1px)}button:disabled{opacity:.6;cursor:not-allowed;transform:none}button.secondary{color:#214052;background:#e9f1f4}button.secondary:hover{background:#dce9ee}.icon-button{color:#45606f;background:0 0;place-items:center;padding:7px;display:grid}.icon-button:hover{color:var(--teal);background:#eaf5f5;transform:none}.menu-toggle,.sidebar-close{display:none}input,textarea,select{color:#162d3d;background:#fff;border:1px solid #cfdde3;border-radius:9px;outline:none;width:100%;min-height:42px;padding:10px 12px;transition:all .18s}input:focus,textarea:focus,select:focus{border-color:#27a99e;box-shadow:0 0 0 3px #27a99e1f}textarea{resize:vertical;min-height:92px}label{color:#405765;letter-spacing:.01em;align-content:start;gap:6px;font-size:12px;font-weight:700;display:grid}.page-header,.hero-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.page-header h1,.hero-header h1{color:#0a2437;letter-spacing:-.04em;margin:2px 0 4px;font-size:clamp(25px,3vw,34px)}.page-header p,.hero-header p{color:var(--muted);margin:0;font-size:14px}.eyebrow{color:#078176;letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:800}.notice{color:#795519;background:#fff9eb;border:1px solid #f1d59c;border-radius:10px;margin-bottom:16px;padding:12px 14px;font-size:13px}.notice.error{color:#9e3434;background:#fff1f1;border-color:#f0c1c1}.form-grid{border:1px solid var(--line);background:#fff;border-radius:15px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:15px;margin-bottom:20px;padding:20px;display:grid;box-shadow:0 8px 24px #1a425609}.form-actions{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.table-wrap{border:1px solid var(--line);background:#fff;border-radius:15px;margin-bottom:26px;overflow:auto;box-shadow:0 8px 24px #1a425609}table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}th{color:#4f6875;letter-spacing:.07em;text-transform:uppercase;background:#f1f6f8;padding:12px 14px;font-size:10px;font-weight:800}td{white-space:nowrap;border-top:1px solid #e9eff2;padding:12px 14px}tbody tr:hover{background:#f8fbfc}td button{margin:1px 3px;padding:7px 10px;font-size:11px}.empty{color:var(--muted);text-align:center;padding:28px}.summary-grid,.metric-grid{grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:14px;margin-bottom:22px;display:grid}.summary-grid article,.metric-card,.panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:15px}.summary-grid article{gap:5px;padding:17px;display:grid}.summary-grid span,.metric-card>div span{color:var(--muted);font-size:11px;font-weight:600}.summary-grid strong{font-family:Manrope;font-size:22px}.module-page h2{color:#183447;margin:26px 0 10px;font-size:17px}.status-pill{color:#18786f;background:#f0fbf9;border:1px solid #cde7e3;border-radius:999px;align-items:center;gap:7px;padding:7px 11px;font-size:11px;font-weight:700;display:inline-flex}.status-pill span{background:#21a995;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #21a9951f}.metric-card{align-items:center;gap:14px;padding:18px;display:flex}.metric-card>div{gap:4px;display:grid}.metric-card strong{color:#102d3e;font-family:Manrope;font-size:25px}.metric-icon{border-radius:13px;place-items:center;min-width:45px;height:45px;display:grid}.metric-icon.blue{color:#2c6ca1;background:#e8f3fb}.metric-icon.cyan{color:#087f75;background:#e2f8f6}.metric-icon.green{color:#2c8553;background:#e9f8ee}.metric-icon.violet{color:#7353a8;background:#f1ecfb}.metric-icon.amber{color:#a26b11;background:#fff5dd}.dashboard-grid{grid-template-columns:minmax(0,2fr) minmax(250px,1fr);gap:16px;display:grid}.panel{padding:22px}.panel-heading{justify-content:space-between;align-items:start;display:flex}.panel h2{margin:3px 0 20px}.flow-track{grid-template-columns:repeat(6,1fr);gap:8px;display:grid;position:relative}.flow-track:before{content:"";background:#dcebed;height:2px;position:absolute;top:17px;left:7%;right:7%}.flow-track div{z-index:1;color:#49616e;justify-items:center;gap:8px;font-size:11px;display:grid}.flow-track div span{color:#fff;background:var(--teal);border:4px solid #edf7f7;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.quick-stat{background:#edf9f7;border-radius:12px;align-items:center;gap:13px;padding:13px;display:flex}.quick-stat+.quick-stat{margin-top:9px}.quick-stat strong{color:#087f75;font-family:Manrope;font-size:25px}.quick-stat span{color:#52707d;font-size:12px}.quick-stat.warning{background:#fff7e8}.quick-stat.warning strong{color:#a66b12}.login-page{background-position:50%;background-size:cover;align-items:center;min-height:100vh;padding:48px clamp(24px,7vw,110px);display:grid}.login-panel{color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#071d30a6;border:1px solid #ffffff2b;border-radius:24px;width:min(100%,440px);padding:34px;box-shadow:0 32px 80px #00000054}.login-brand{align-items:center;gap:12px;margin-bottom:46px;display:flex}.login-brand strong{font-family:Manrope;font-size:16px}.login-brand small{color:#a9c2cf;font-size:11px}.login-copy h1{color:#fff;letter-spacing:-.04em;margin:5px 0 9px;font-size:35px}.login-copy p{color:#b9ccd5;font-size:13px;line-height:1.55}.login-form{gap:16px;margin-top:25px;display:grid}.login-form label{color:#d9e7ed}.input-icon{position:relative}.input-icon>svg{color:#7893a1;width:17px;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.input-icon input{color:#fff;background:#ffffff14;border-color:#ffffff26;height:47px;padding-left:42px;padding-right:43px}.input-icon input::placeholder{color:#7893a1}.input-icon input:focus{background:#ffffff1f;border-color:#66d6ce}.password-toggle{color:#8ca5b1;background:0 0;place-items:center;padding:8px;display:grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.password-toggle:hover{color:#fff;background:0 0;transform:translateY(-50%)}.password-toggle svg{width:17px}.login-options{color:#91aab6;justify-content:space-between;gap:12px;font-size:11px;display:flex}.login-options a{color:#82ded7;font-weight:700;text-decoration:none}.full{width:100%;min-height:47px}.login-footer{color:#809aa7;text-align:center;text-transform:uppercase;letter-spacing:.08em;margin:24px 0 0;font-size:10px}.clinical-form{gap:16px;display:grid}.clinical-section{border:1px solid var(--line);background:#fff;border-radius:15px;padding:20px}.clinical-section h2{border-bottom:1px solid #e7eef1;align-items:center;gap:9px;margin:0 0 16px;padding-bottom:11px;font-size:16px;display:flex}.field-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;display:grid}.field-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.field-grid .wide{grid-column:1/-1}.eye-table{grid-template-columns:120px repeat(3,minmax(80px,1fr));align-items:end;gap:8px;display:grid}.eye-table .eye-label{color:#486270;text-transform:uppercase;padding:10px;font-size:11px;font-weight:800}.sticky-actions{z-index:5;border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;border-radius:13px;justify-content:flex-end;gap:9px;padding:12px;display:flex;position:sticky;bottom:12px;box-shadow:0 10px 35px #09283a21}.checkbox-label{align-items:center;gap:8px;display:flex}.checkbox-label input{width:18px;min-height:18px}.print-document{display:none}.filters,.eye-diagrams{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:16px 0;display:grid}.filters label{max-width:280px}.eye-editor{border:1px solid var(--line);background:#f8fbfc;border-radius:15px;gap:10px;padding:16px;display:grid}.eye-editor svg{width:100%;max-height:155px}.eye-editor label{gap:5px;display:grid}.color-dot{border:1px solid #64748b;border-radius:50%;width:11px;height:11px;margin-right:7px;display:inline-block}.amount-alert{color:#b42318;font-weight:700}.purchase-line{border:1px solid var(--line);border-radius:12px;grid-template-columns:1.1fr 1.5fr .55fr .7fr auto;align-items:end;gap:10px;margin:14px 0;padding:12px;display:grid}.image-preview{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:10px;width:150px;height:110px;margin-top:8px}.table-thumb{object-fit:contain;background:#f1f5f9;border-radius:9px;width:58px;height:48px}.patient-photo-field{border:1px dashed var(--line);border-radius:14px;align-items:center;gap:20px;margin-bottom:18px;padding:14px;display:flex}.patient-photo-field img{object-fit:cover;border-radius:16px;width:120px;height:120px}.patient-name{align-items:center;gap:10px;min-width:220px;display:flex}.patient-name .table-thumb{object-fit:cover;border-radius:50%}.tryon-panel{border:1px solid var(--line);background:#f8fbfc;border-radius:16px;grid-template-columns:minmax(260px,420px) 1fr;gap:20px;margin:12px 0 24px;padding:18px;display:grid}.tryon-canvas{aspect-ratio:4/3;background:#dbe8ed;border-radius:15px;position:relative;overflow:hidden}.tryon-canvas>img:first-child{object-fit:cover;width:100%;height:100%;display:block}.tryon-canvas .frame-overlay{object-fit:contain;filter:drop-shadow(0 3px 2px #0005);height:auto;position:absolute;left:50%}.generated-frame{filter:drop-shadow(0 3px 2px #0005);justify-content:center;align-items:center;height:29%;display:flex;position:absolute;left:50%}.generated-frame span{background:#cde7f233;border:7px solid;width:43%;height:82%}.generated-frame.round span{border-radius:50%}.generated-frame.angular span{border-radius:18%}.generated-frame i{background:currentColor;width:14%;height:7px;display:block}.generated-frame:before,.generated-frame:after{content:"";background:currentColor;width:16%;height:6px;position:absolute;top:38%}.generated-frame:before{right:98%;transform:rotate(-8deg)}.generated-frame:after{left:98%;transform:rotate(8deg)}.tryon-controls{align-content:start;gap:12px;display:grid}.tryon-controls label{gap:5px;display:grid}details{margin-bottom:22px}.catalogo-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.product-card{background:#fff;border:1px solid #eaeaea;border-radius:8px;flex-direction:column;transition:box-shadow .2s,transform .2s;display:flex;overflow:hidden}.product-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000000f}.product-image{background:#f8f9fa;border-bottom:1px solid #f0f0f0;justify-content:center;align-items:center;height:180px;padding:.5rem;display:flex;position:relative}.product-image img{object-fit:contain;max-width:100%;max-height:100%;display:block}.image-placeholder{color:#adb5bd;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;font-size:.8rem;display:flex}.image-placeholder svg{opacity:.5}.badge-out-of-stock,.badge-low-stock{text-transform:uppercase;letter-spacing:.5px;z-index:2;border-radius:20px;padding:.25rem .75rem;font-size:.65rem;font-weight:700;position:absolute;top:8px;right:8px}.badge-out-of-stock{color:#fff;background:#dc3545}.badge-low-stock{color:#212529;background:#ffc107}.product-info{flex-direction:column;flex:1;padding:1rem;display:flex}.product-info h3{color:#1a1a1a;margin:0 0 .25rem;font-size:.95rem;font-weight:600}.product-category{color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.3rem;font-size:.7rem}.product-description{color:#6c757d;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;margin:.25rem 0 .5rem;font-size:.8rem;display:-webkit-box;overflow:hidden}.product-info small{color:#888;margin-bottom:.5rem;font-size:.7rem}.product-price{justify-content:space-between;align-items:center;margin:.5rem 0;display:flex}.product-price strong{color:#1a1a1a;font-size:1.1rem}.stock-info{color:#28a745;font-size:.7rem;font-weight:600}.product-card button{color:#333;cursor:pointer;background:#f8f9fa;border:1px solid #eaeaea;border-radius:6px;width:100%;margin-top:auto;padding:.6rem;font-size:.8rem;transition:all .2s}.product-card button:hover:not(:disabled){background:#e9ecef;border-color:#1a1a1a}.product-card button:disabled{opacity:.5;cursor:not-allowed}@media (width<=1050px){.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.flow-track{min-width:650px;padding-bottom:8px;overflow-x:auto}.panel:first-child{overflow:hidden}.metric-grid{grid-template-columns:repeat(2,1fr)}.purchase-line{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.tryon-panel{grid-template-columns:1fr}}@media (width<=820px){.app-shell{grid-template-columns:1fr}.sidebar{width:min(88vw,290px);transition:all .25s;position:fixed;transform:translate(-105%)}.sidebar-open{transform:translate(0)}.sidebar-backdrop{z-index:20;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0415237a;border:0;border-radius:0;position:fixed;inset:0}.menu-toggle,.sidebar-close{display:grid}.sidebar-close{color:#a9c1cb;margin-left:auto}.topbar{height:64px;padding:0 17px}.content{padding:22px 16px 45px}.product-detail-grid,.cart-grid{grid-template-columns:1fr!important;gap:1.5rem!important}}@media (width<=600px){.login-page{background-position:68%;padding:0}.login-panel{background:#061928de;border:0;border-radius:0;flex-direction:column;justify-content:center;width:100%;min-height:100vh;padding:28px 22px;display:flex}.login-brand{margin-bottom:36px}.page-header,.hero-header{flex-direction:column;align-items:flex-start}.metric-grid,.field-grid,.field-grid.cols-3{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr;padding:15px}.eye-table{grid-template-columns:78px repeat(3,minmax(70px,1fr));overflow-x:auto}.status-pill{align-self:flex-start}.topbar>svg{display:none}.drawer{width:100%!important;padding:16px!important}}.calendar-day.past-day{opacity:.55;cursor:not-allowed;background:#f8fafb}.calendar-day.past-day .day-number{cursor:not-allowed;opacity:.5}.nav-group{gap:4px;margin-bottom:10px;display:grid}.nav-group-label{color:#6f929f;letter-spacing:.12em;text-transform:uppercase;padding:8px 13px 3px;font-size:10px;font-weight:800}.profile-link{border:1px solid var(--line);min-height:40px;color:var(--text);border-radius:10px;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:700;text-decoration:none;display:flex}.profile-link:hover,.profile-link:focus-visible{border-color:var(--primary);color:var(--primary)}.role-badge,.account-status{color:#126f67;background:#f0faf8;border:1px solid #c9e2df;border-radius:999px;align-items:center;padding:7px 11px;font-size:12px;font-weight:800;display:inline-flex}.role-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.role-actions a{border:1px solid var(--line);min-height:74px;color:var(--text);background:#fbfdfd;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;padding:14px;text-decoration:none;display:grid}.role-actions a:hover,.role-actions a:focus-visible{background:#f1faf8;border-color:#83c8c1}.role-actions svg{color:var(--primary);grid-row:1/3}.role-actions span{font-weight:800}.role-actions small{color:var(--muted)}.profile-hero{border:1px solid var(--line);background:var(--surface);border-radius:16px;align-items:center;gap:16px;margin-bottom:20px;padding:20px 22px;display:flex}.profile-hero h1{margin:2px 0 3px;font-size:27px}.profile-hero p{color:var(--muted);margin:0}.profile-hero .account-status{margin-left:auto}.profile-avatar{color:#fff;background:#0b5f5a;border-radius:16px;place-items:center;width:62px;height:62px;font:800 20px Manrope,sans-serif;display:grid}.account-status.inactive{color:#9a3131;background:#fff3f3;border-color:#edc8c8}.profile-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.8fr);gap:16px;display:grid}.profile-side{align-content:start;gap:16px;display:grid}.locked-fields{border:1px solid var(--line);background:var(--line);border-radius:12px;gap:1px;margin-top:18px;display:grid;overflow:hidden}.locked-fields>div{background:#f8fafb;grid-template-columns:100px 1fr;gap:3px 12px;padding:12px 14px;display:grid}.locked-fields span{color:var(--muted);font-size:12px}.locked-fields small{color:var(--muted);grid-column:2}.profile-facts{margin:14px 0 0}.profile-facts>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:11px 0;display:flex}.profile-facts dt{color:var(--muted)}.profile-facts dd{text-align:right;margin:0;font-weight:700}.help-text,.profile-role-note{color:var(--muted);font-size:12px;line-height:1.55}.activity-list{display:grid}.activity-list>div{border-bottom:1px solid var(--line);gap:3px;padding:10px 0;display:grid}.activity-list span{text-transform:lowercase;font-size:12px;font-weight:800}.activity-list small{color:var(--muted)}@media (width<=900px){.profile-grid,.role-actions{grid-template-columns:1fr}.profile-hero{flex-wrap:wrap;align-items:flex-start}.profile-hero .account-status{margin-left:0}.profile-link span{display:none}}.page-actions{align-items:center;gap:8px;display:flex}.status-badge{border:1px solid var(--line);color:#536a75;background:#f5f7f8;border-radius:999px;align-items:center;width:max-content;padding:4px 8px;font-size:11px;font-weight:800;display:inline-flex}.status-badge.success{color:#157268;background:#ecf8f5;border-color:#b9dfd8}.status-badge.warning{color:#8c6112;background:#fff8e9;border-color:#ecd6a8}.status-badge.danger{color:#9c3333;background:#fff2f2;border-color:#efc5c5}.status-badge.info{color:#276985;background:#eef8fc;border-color:#bdd9e8}.table-toolbar{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:end;gap:12px;margin-bottom:12px;padding:12px;display:flex}.table-toolbar label{flex:1}.table-toolbar .result-count{color:var(--muted);margin-left:auto;padding-bottom:10px;font-size:12px;font-weight:700}.pagination{justify-content:flex-end;align-items:center;gap:12px;margin-top:12px;display:flex}.pagination span{color:var(--muted);font-size:12px}.patient-summary-card{border:1px solid var(--line);background:#f7fbfb;border-radius:12px;align-items:center;gap:12px;margin-bottom:16px;padding:14px;display:flex}.patient-summary-card img{object-fit:cover;border-radius:12px;width:58px;height:58px}.patient-summary-card>div{gap:3px;display:grid}.patient-summary-card span{color:var(--muted);font-size:12px}.billing-form{border:1px solid var(--line);background:#fff;border-radius:15px;gap:14px;margin-bottom:28px;padding:18px;display:grid}.billing-form>h2{border-top:1px solid var(--line);margin:12px 0 0;padding-top:16px}.billing-summary{z-index:8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f7fcfbf5;border:1px solid #b9d7d4;border-radius:13px;padding:10px;position:sticky;bottom:12px;box-shadow:0 10px 28px #0730371f}.clinical-progress{z-index:12;border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;border-radius:12px;gap:6px;margin-bottom:14px;padding:8px;display:flex;position:sticky;top:8px;overflow-x:auto;box-shadow:0 8px 24px #07283214}.clinical-progress a{min-width:max-content;color:var(--muted);border-radius:8px;align-items:center;gap:6px;padding:7px 9px;font-size:11px;font-weight:700;text-decoration:none;display:flex}.clinical-progress a:hover,.clinical-progress a:focus-visible{color:var(--primary);background:#edf8f6}.clinical-progress span{color:#fff;background:#507985;border-radius:50%;place-items:center;width:20px;height:20px;font-size:10px;display:grid}.clinical-section{scroll-margin-top:88px}.state-view{text-align:center;min-height:180px;color:var(--muted);background:#fafcfc;border:1px dashed #bfd0d7;border-radius:14px;justify-items:center;gap:7px;padding:34px;display:grid}.state-view svg{color:#73919d}.state-view strong{color:var(--text)}.state-view span{font-size:12px}.state-view.error{background:snow;border-color:#e9c7c7}.state-view.error svg{color:#b74b4b}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.calendar-toolbar{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:14px;margin-bottom:14px;padding:14px;display:grid}.calendar-navigation,.calendar-filters,.view-switch{align-items:end;gap:8px;display:flex}.calendar-navigation strong{text-transform:capitalize;margin-left:6px}.calendar-filters{justify-content:space-between}.calendar-filters label{min-width:180px}.view-switch{margin-left:auto}.view-switch button.active{background:var(--primary);color:#fff}.calendar{border:1px solid var(--line);background:var(--surface);border-radius:14px;overflow:hidden}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(110px,1fr));display:grid}.calendar-weekdays{background:#f2f7f8}.calendar-weekdays span{color:var(--muted);text-align:center;padding:10px;font-size:11px;font-weight:800}.calendar-day{border-top:1px solid var(--line);border-right:1px solid var(--line);min-height:132px;padding:7px}.calendar-day:nth-child(7n){border-right:0}.calendar-day.blank{background:#f8fafb}.calendar-day.today{background:#f1faf8}.day-number{width:28px;height:28px;color:var(--text);box-shadow:none;background:0 0;border-radius:50%;place-items:center;padding:0;display:grid}.calendar-day.today .day-number{color:#fff;background:var(--primary)}.day-events{gap:4px;margin-top:4px;display:grid}.appointment{color:#275b6b;width:100%;box-shadow:none;text-align:left;background:#eff8fa;border:1px solid #cce1e5;border-radius:7px;gap:1px;padding:6px 7px;display:grid}.appointment strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.appointment span{font-size:9px}.appointment.success{color:#157268;background:#ecf8f5;border-color:#b9dfd8}.appointment.warning{color:#80590f;background:#fff8e9;border-color:#ecd6a8}.appointment.danger{color:#943434;background:#fff2f2;border-color:#efc5c5}.agenda-list{border:1px solid var(--line);background:#fff;border-radius:14px;display:grid}.agenda-list>button{border:0;border-bottom:1px solid var(--line);color:var(--text);box-shadow:none;text-align:left;background:#fff;border-radius:0;grid-template-columns:190px 1fr auto;align-items:center;gap:18px;padding:14px 16px;display:grid}.agenda-list>button:last-child{border-bottom:0}.agenda-list>button:hover{background:#f5faf9}.agenda-list time{color:var(--muted);font-size:12px}.agenda-list span{display:grid}.agenda-list small{color:var(--muted);margin-top:3px}.drawer-backdrop{z-index:80;background:#0519246b;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:#fff;width:min(520px,100%);height:100%;padding:24px;overflow-y:auto;box-shadow:-18px 0 45px #0319262e}.drawer>header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.drawer h2{margin:2px 0}.drawer-form,.drawer-form>label,.drawer>label{gap:7px;display:grid}.drawer-form{gap:16px}.appointment-detail{margin:0 0 18px}.appointment-detail>div{border-bottom:1px solid var(--line);grid-template-columns:130px 1fr;gap:10px;padding:10px 0;display:grid}.appointment-detail dt{color:var(--muted)}.appointment-detail dd{margin:0;font-weight:700}.payment-box{border:1px solid var(--line);background:#f8fbfb;border-radius:12px;gap:10px;margin-top:22px;padding:16px;display:grid}.payment-box h3{gap:7px;margin:0;display:flex}.payment-box label{gap:5px;display:grid}@media (width<=900px){.calendar{overflow-x:auto}.calendar-weekdays,.calendar-grid{min-width:780px}.calendar-filters{flex-direction:column;align-items:stretch}.calendar-filters label{min-width:0}.view-switch{margin-left:0}.agenda-list>button{grid-template-columns:1fr}.calendar-navigation{flex-wrap:wrap}}@media print{.sidebar,.topbar,.page-header button,.form-grid,.sticky-actions,button,.notice{display:none!important}.app-shell{display:block}.content{padding:0}.table-wrap,.clinical-section{box-shadow:none;border:0}body{color:#000;background:#fff}.module-page{max-width:none}.prescription-page .screen-content{display:none!important}.prescription-page .print-document{padding:24px;display:block}.print-document header{border-bottom:2px solid #12384b;justify-content:space-between;margin-bottom:24px;padding-bottom:15px;display:flex}.print-document header h1{margin:0}.print-document table{border:1px solid #ccd8de;margin:22px 0}.signature-line{text-align:center;border-top:1px solid #333;width:260px;margin:70px 0 0 auto;padding-top:8px}.module-page>.print-document{padding:24px;display:block}.module-page:has(>.print-document)>:not(.print-document){display:none!important}}.tryon-studio{grid-template-columns:minmax(280px,1fr) minmax(260px,340px);gap:20px;display:grid}.tryon-canvas--studio{aspect-ratio:3/4;background:#0f172a;max-height:60vh}.tryon-canvas--studio>video{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.tryon-canvas--studio>img:first-child{object-fit:contain;width:100%;height:100%}.tryon-vacio{text-align:center;color:#cbd5e1;place-content:center;justify-items:center;gap:10px;padding:24px;display:grid;position:absolute;inset:0}.tryon-cargando{color:#fff;text-align:center;background:#0f172acc;padding:8px;font-size:.85rem;position:absolute;inset:auto 0 0}.tryon-fuentes{flex-wrap:wrap;gap:8px;display:flex}.tryon-fuentes button,.tryon-acciones button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.tryon-acciones{flex-wrap:wrap;gap:8px;display:flex}.tryon-controls button.secundario{color:#0f3460;background:#fff;border:1px solid #0f346055}.tryon-consentimiento{color:#475569;align-items:flex-start;gap:8px;font-size:.82rem;line-height:1.4;display:flex}.tryon-consentimiento input{width:auto;margin-top:3px}.tryon-peso{color:#64748b;font-size:.75rem}.tryon-backdrop{z-index:1100;background:#000000d9;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow-y:auto}.tryon-dialog{background:#fff;border-radius:16px;width:min(960px,100%);padding:20px;box-shadow:0 20px 60px #0008}.tryon-dialog__header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.tryon-dialog__header h2{margin:0;font-size:1.15rem}@media (width<=800px){.tryon-studio{grid-template-columns:1fr}.tryon-canvas--studio{aspect-ratio:4/5;max-height:46vh}}.tryon-canvas--live{aspect-ratio:4/3;background:#0f172a;justify-content:center;align-items:center;max-height:62vh;display:flex}.tryon-lienzo{object-fit:contain;touch-action:none;width:100%;height:100%;display:block}.tryon-lienzo:active{cursor:grabbing}.tryon-estado{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:999px;padding:6px 12px;font-size:.8rem;font-weight:600;position:absolute;bottom:12px;left:12px}.tryon-estado.ok{color:#fff;background:#16a34acc}.tryon-estado.buscando{color:#e2e8f0;background:#0f172acc}.tryon-cargando{color:#fff;background:#0f172ae6;border-radius:10px;align-items:center;gap:8px;padding:10px 16px;font-size:.85rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tryon-girando{animation:1s linear infinite tryon-giro}@keyframes tryon-giro{to{transform:rotate(360deg)}}.tryon-control{color:#334155;gap:5px;font-size:.85rem;display:grid}.tryon-control span{font-weight:600}.tryon-control input[type=range]{width:100%}.tryon-control select{border:1px solid var(--line,#e2e8f0);background:#fff;border-radius:8px;padding:.5rem}.tryon-seguir,.tryon-consentimiento{color:#475569;align-items:flex-start;gap:8px;font-size:.82rem;line-height:1.4;display:flex}.tryon-seguir input,.tryon-consentimiento input{width:auto;margin-top:3px}.tryon-subir{cursor:pointer;color:#0f3460;background:#fff;border:1px solid #0f346055;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:.55rem 1rem;font-size:.9rem;font-weight:600;display:inline-flex}@media (width<=800px){.tryon-canvas--live{aspect-ratio:3/4;max-height:48vh}}.multifile-grid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;margin-top:8px;display:grid}.multifile-item{border:1px solid var(--line,#e2e8f0);aspect-ratio:1;background:#f8fafc;border-radius:8px;position:relative;overflow:hidden}.multifile-item>img{object-fit:cover;width:100%;height:100%;display:block}.multifile-orden{color:#fff;background:#1a3a6bcc;border-radius:50%;place-items:center;width:18px;height:18px;font-size:11px;font-weight:700;display:grid;position:absolute;top:4px;left:4px}.multifile-acciones{background:#0f172acc;justify-content:center;gap:2px;padding:2px;display:flex;position:absolute;inset:auto 0 0}.multifile-acciones button{color:#fff;cursor:pointer;background:#fff2;border:none;border-radius:4px;width:22px;height:22px;padding:0;font-size:12px;line-height:1}.multifile-acciones button:disabled{opacity:.35;cursor:default}.multifile-acciones button.quitar{background:#dc262699}.multifile-nota{color:#64748b;margin-top:6px;font-size:12px;display:block}
