*,::before,::after{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}table{border-collapse:collapse;width:100%}img{max-width:100%;display:block}
.min-h-screen{min-height:100vh}.fixed{position:fixed}.sticky{position:sticky}.static{position:static}.inset-y-0{top:0;bottom:0}.left-0{left:0}.top-0{top:0}.z-30{z-index:30}.z-40{z-index:40}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.block{display:block}.inline{display:inline}.hidden{display:none}.flex{display:flex}.grid{display:grid}.contents{display:contents}.h-16{height:4rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-64{width:16rem}.w-full{width:100%}.max-w-md{max-width:28rem}.max-w-3xl{max-width:48rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.min-w-0{min-width:0}.flex-1{flex:1 1 0%}.translate-x-0{transform:translateX(0)}.-translate-x-full{transform:translateX(-100%)}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-y-1>*+*{margin-top:.25rem}.space-y-2>*+*{margin-top:.5rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.overflow-x-auto{overflow-x:auto}.rounded-lg{border-radius:8px}.rounded-xl{border-radius:8px}.rounded-2xl{border-radius:8px}.border{border:1px solid #e2e8f0}.border-b{border-bottom:1px solid #e2e8f0}.border-dashed{border-style:dashed}.border-slate-100{border-color:#f1f5f9}.border-slate-200{border-color:#e2e8f0}.border-slate-300{border-color:#cbd5e1}.border-emerald-200{border-color:#a7f3d0}.bg-white{background:#fff}.bg-slate-50{background:#f8fafc}.bg-slate-100{background:#f1f5f9}.bg-slate-950{background:#020617}.bg-slate-900{background:#0f172a}.bg-slate-800{background:#1e293b}.bg-blue-50{background:#eff6ff}.bg-emerald-50{background:#ecfdf5}.bg-red-50{background:#fef2f2}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.uppercase{text-transform:uppercase}.tracking-wide{letter-spacing:.04em}.whitespace-pre-line{white-space:pre-line}.text-white{color:#fff}.text-slate-200{color:#e2e8f0}.text-slate-300{color:#cbd5e1}.text-slate-400{color:#94a3b8}.text-slate-500{color:#64748b}.text-slate-600{color:#475569}.text-slate-700{color:#334155}.text-slate-800{color:#1e293b}.text-slate-900{color:#0f172a}.text-blue-700{color:#1d4ed8}.text-red-700{color:#b91c1c}.text-amber-400{color:#fbbf24}.shadow-sm{box-shadow:0 1px 2px rgba(15,23,42,.08)}.shadow-2xl{box-shadow:0 25px 50px rgba(15,23,42,.25)}.transition{transition:.2s ease}.hover\:bg-slate-50:hover{background:#f8fafc}.hover\:bg-slate-100:hover{background:#f1f5f9}.hover\:bg-slate-800\/90:hover{background:rgba(30,41,59,.9)}.min-h-24{min-height:6rem}.min-h-28{min-height:7rem}.min-h-32{min-height:8rem}
.card{background:#fff;border:1px solid #dbe4ee;border-radius:8px;padding:1.25rem;box-shadow:0 1px 2px rgba(15,23,42,.05)}.page-head{display:flex;flex-direction:column;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.page-head h1{margin:0;font-size:1.75rem;line-height:1.1}.page-head p{margin:.35rem 0 0;color:#64748b;font-size:.95rem}.btn{align-items:center;border:1px solid transparent;border-radius:8px;cursor:pointer;display:inline-flex;font-weight:700;gap:.5rem;justify-content:center;min-height:2.85rem;padding:.7rem 1rem;white-space:nowrap}.btn-primary{background:#0f172a;color:#fff}.btn-secondary{background:#e2e8f0;color:#0f172a}.btn-danger{background:#dc2626;color:#fff}.btn-outline{background:#fff;border-color:#cbd5e1;color:#0f172a}.input{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#0f172a;display:block;line-height:1.4;min-height:2.75rem;padding:.7rem .9rem;width:100%}.input:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.15);outline:0}.label{color:#475569;display:block;font-size:.8rem;font-weight:700;margin-bottom:.45rem}.table th,.table td{border-bottom:1px solid #e2e8f0;padding:.9rem;text-align:left;vertical-align:top}.table th{color:#475569;font-size:.75rem;text-transform:uppercase}.badge{border-radius:999px;display:inline-flex;font-size:.75rem;font-weight:800;padding:.35rem .65rem}.badge-gray{background:#e2e8f0;color:#334155}.badge-blue{background:#dbeafe;color:#1d4ed8}.badge-yellow{background:#fef3c7;color:#92400e}.badge-purple{background:#ede9fe;color:#6d28d9}.badge-green{background:#dcfce7;color:#166534}.badge-red{background:#fee2e2;color:#991b1b}.alert{border-radius:8px;font-weight:700;margin-bottom:1rem;padding:.9rem 1rem}.alert-success{background:#dcfce7;color:#166534}.alert-error{background:#fee2e2;color:#991b1b}
.sidebar-shell{box-shadow:18px 0 32px rgba(2,6,23,.18)}.sidebar-link{font-size:1rem;font-weight:600;transition:background .18s ease,color .18s ease,transform .18s ease}.sidebar-link:hover{background:rgba(37,99,235,.18);color:#fff;transform:translateX(2px)}
.os-header-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.os-tabbar{display:flex;flex-wrap:wrap;gap:.75rem}.os-tab-btn{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#0f172a;font-size:1rem;font-weight:700;min-height:3rem;padding:.85rem 1.15rem}.os-tab-btn.active{background:#0f172a;border-color:#0f172a;color:#fff}.os-section-grid{display:grid;gap:1rem}.os-section-grid.two{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.os-section-grid.three{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.os-inline-check{display:inline-flex;align-items:center;gap:.75rem;border:1px solid #dbe4ee;background:#f8fafc;border-radius:8px;padding:1rem}.pdf-shell{max-width:980px;margin:0 auto;padding:24px}.pdf-grid{display:grid;gap:1rem;grid-template-columns:1.4fr .9fr}.pdf-section{page-break-inside:avoid}
.client-search-results{position:absolute;left:0;right:0;top:calc(100% + .4rem);z-index:25;max-height:280px;overflow:auto;border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.14);padding:.35rem}.client-search-option{display:block;width:100%;text-align:left;border:0;background:#fff;border-radius:8px;padding:.8rem .9rem;cursor:pointer}.client-search-option+.client-search-option{margin-top:.25rem}.client-search-option:hover{background:#f8fafc}.client-search-title{font-weight:700;color:#0f172a}.client-search-meta{font-size:.84rem;color:#64748b;margin-top:.15rem}.client-search-empty{padding:1rem;color:#64748b;font-size:.9rem}.rating-star-btn{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#94a3b8;display:inline-flex;font-size:1.4rem;height:44px;justify-content:center;width:44px}
@media (min-width:640px){.sm\:inline{display:inline}.sm\:flex-row{flex-direction:row}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:items-center{align-items:center}}
@media (min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.md\:col-span-2{grid-column:span 2/span 2}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}}
@media (min-width:1024px){.lg\:static{position:static}.lg\:translate-x-0{transform:translateX(0)}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:p-8{padding:2rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[1\.35fr_\.65fr\]{grid-template-columns:1.35fr .65fr}.lg\:grid-cols-\[1\.3fr_\.7fr\]{grid-template-columns:1.3fr .7fr}.lg\:grid-cols-\[1\.2fr_\.8fr\]{grid-template-columns:1.2fr .8fr}.lg\:grid-cols-\[1\.1fr_\.9fr\]{grid-template-columns:1.1fr .9fr}}
@media print{body{background:#fff}.btn,.page-head .btn,header,aside{display:none!important}.pdf-shell,.mx-auto{max-width:none;width:100%;padding:0}.card{box-shadow:none;border:1px solid #cbd5e1}.pdf-grid{grid-template-columns:1fr}.page-break{page-break-before:always}}
.relative{position:relative}.w-72{width:18rem}.justify-start{justify-content:flex-start}.px-2{padding-left:.5rem;padding-right:.5rem}
.client-search-results{position:absolute;left:0;right:0;top:calc(100% + .4rem);z-index:25;max-height:280px;overflow:auto;border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.14);padding:.35rem}
.client-search-option{display:block;width:100%;text-align:left;border:0;background:#fff;border-radius:8px;padding:.8rem .9rem;cursor:pointer}
.client-search-option+.client-search-option{margin-top:.25rem}
.client-search-option:hover{background:#f8fafc}
.client-search-title{font-weight:700;color:#0f172a}
.client-search-meta{font-size:.84rem;color:#64748b;margin-top:.15rem}
.client-search-empty{padding:1rem;color:#64748b;font-size:.9rem}
.rating-star-btn{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#94a3b8;display:inline-flex;font-size:1.4rem;height:44px;justify-content:center;width:44px}
#cliente_results button{display:block;width:100%;text-align:left;border:0;background:#fff;border-radius:8px;padding:.8rem .9rem;cursor:pointer}
#cliente_results button+button{margin-top:.25rem}
#cliente_results button:hover{background:#f8fafc}
