@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800&display=swap");:root{--kp-green:#1b8c3d;--kp-green-dark:#146b2e;--kp-green-light:#e8f5ec;--kp-green-50:#f0faf3;--kp-green-100:#d1f0da;--kp-green-600:#1b8c3d;--kp-green-700:#146b2e;--kp-green-800:#0f5423;--kp-white:#fff;--kp-gray-50:#f9fafb;--kp-gray-100:#f3f4f6;--kp-gray-200:#e5e7eb;--kp-gray-300:#d1d5db;--kp-gray-400:#9ca3af;--kp-gray-500:#6b7280;--kp-gray-600:#4b5563;--kp-gray-700:#374151;--kp-gray-800:#1f2937;--kp-coral:#e8593c;--kp-amber:#f59e0b;--kp-shadow:0 4px 24px rgba(27,140,61,.08);--kp-shadow-lg:0 12px 48px rgba(27,140,61,.12);--kp-radius:12px;--kp-radius-lg:16px;--kp-radius-sm:8px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Nunito,-apple-system,sans-serif;background:linear-gradient(135deg,#e8f5ec,#f0faf3 50%,#f9fafb);min-height:100vh;color:var(--kp-gray-800)}.kp-container{max-width:680px;margin:0 auto;padding:24px 16px 48px;min-height:100vh;display:flex;flex-direction:column;justify-content:flex-start}.kp-card{background:var(--kp-white);border-radius:var(--kp-radius-lg);box-shadow:var(--kp-shadow-lg);padding:32px 28px;position:relative;overflow:hidden}.kp-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--kp-green),var(--kp-green-dark),var(--kp-green))}.kp-header{text-align:center;margin-bottom:28px}.kp-logo{display:flex;justify-content:center;align-items:center;gap:8px;margin-bottom:8px}.kp-logo-text{font-size:32px;font-weight:800;color:var(--kp-green);letter-spacing:-.5px}.kp-logo-pet{position:relative}.kp-subtitle{color:var(--kp-gray-500);font-size:15px;font-weight:400}.progress-bar{display:flex;align-items:flex-start;justify-content:center;gap:0;margin-bottom:32px;padding:0 8px}.progress-step{flex-direction:column;position:relative;flex:1 1}.progress-dot,.progress-step{display:flex;align-items:center}.progress-dot{width:32px;height:32px;border-radius:50%;justify-content:center;font-size:13px;font-weight:700;background:var(--kp-gray-100);color:var(--kp-gray-400);border:2px solid var(--kp-gray-200);transition:all .3s ease;z-index:2}.progress-step.active .progress-dot{background:var(--kp-green-light);color:var(--kp-green);border-color:var(--kp-green)}.progress-step.current .progress-dot{background:var(--kp-green);color:#fff;border-color:var(--kp-green);box-shadow:0 0 0 4px rgba(27,140,61,.15)}.progress-label{font-size:11px;color:var(--kp-gray-400);margin-top:6px;font-weight:600;white-space:nowrap}.progress-step.active .progress-label{color:var(--kp-green-700)}.progress-line{position:absolute;top:16px;left:calc(50% + 20px);right:calc(-50% + 20px);height:2px;background:var(--kp-gray-200);z-index:1;transition:background .3s}.progress-line.done{background:var(--kp-green)}.step-title{font-size:22px;font-weight:700;color:var(--kp-gray-800);margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--kp-gray-100)}.step-content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.section{margin-bottom:28px}.section h3{font-size:15px;font-weight:700;color:var(--kp-gray-700);margin-bottom:12px}.section h3 .hint{font-weight:400;color:var(--kp-gray-400);font-size:13px}.taxi-options{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.taxi-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px 16px;border:2px solid var(--kp-gray-200);border-radius:var(--kp-radius);background:var(--kp-white);cursor:pointer;transition:all .2s;font-family:inherit}.taxi-btn:hover{border-color:var(--kp-gray-300);background:var(--kp-gray-50)}.taxi-btn.selected.no,.taxi-btn.selected.yes{border-color:var(--kp-green);background:var(--kp-green-50)}.taxi-icon{font-size:28px}.taxi-label{font-size:15px;font-weight:700;color:var(--kp-gray-700)}.taxi-hint{font-size:12px;color:var(--kp-gray-400)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}@media (max-width:540px){.services-grid{grid-template-columns:repeat(2,1fr)}}.service-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 8px;border:2px solid var(--kp-gray-200);border-radius:var(--kp-radius);background:var(--kp-white);cursor:pointer;transition:all .2s;font-family:inherit}.service-card:hover{border-color:var(--kp-green);transform:translateY(-2px);box-shadow:0 4px 12px rgba(27,140,61,.1)}.service-card.selected{border-color:var(--kp-green);background:var(--kp-green-50)}.service-icon{font-size:24px}.service-name{font-size:14px;font-weight:700;color:var(--kp-gray-700)}.service-desc{font-size:11px;color:var(--kp-gray-400);text-align:center;line-height:1.3}.service-check{position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;background:var(--kp-green);color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;font-weight:700}.fields-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px 20px;gap:16px 20px}@media (max-width:540px){.fields-grid{grid-template-columns:1fr}}.field{display:flex;flex-direction:column;gap:5px}.field.full-width{grid-column:1/-1}.field label{font-size:13px;font-weight:700;color:var(--kp-gray-600)}.field label .req{color:var(--kp-coral);margin-left:2px}.field input,.field textarea{padding:10px 14px;border:1.5px solid var(--kp-gray-200);border-radius:var(--kp-radius-sm);font-size:15px;font-family:inherit;color:var(--kp-gray-800);background:var(--kp-white);transition:border-color .2s,box-shadow .2s;outline:none;width:100%}.field input:focus,.field textarea:focus{border-color:var(--kp-green);box-shadow:0 0 0 3px rgba(27,140,61,.1)}.field input.error,.field textarea.error{border-color:var(--kp-coral)}.field-error{font-size:12px;color:var(--kp-coral);font-weight:600}.field-error.block{display:block;margin-bottom:8px}.behavior-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px}@media (max-width:540px){.behavior-grid{grid-template-columns:repeat(2,1fr)}}.behavior-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;border:2px solid var(--kp-gray-200);border-radius:var(--kp-radius);background:var(--kp-white);cursor:pointer;transition:all .2s;font-family:inherit}.behavior-btn:hover{border-color:var(--kp-gray-300)}.behavior-btn.selected{transform:scale(1.02)}.behavior-emoji{font-size:28px}.behavior-label{font-size:13px;font-weight:700;color:var(--kp-gray-700)}.date-input{padding:10px 14px;border:1.5px solid var(--kp-gray-200);border-radius:var(--kp-radius-sm);font-size:15px;font-family:inherit;color:var(--kp-gray-800);width:100%;max-width:260px;outline:none;transition:border-color .2s,box-shadow .2s}.date-input:focus{border-color:var(--kp-green);box-shadow:0 0 0 3px rgba(27,140,61,.1)}.date-input.error{border-color:var(--kp-coral)}.hours-grid{display:flex;flex-wrap:wrap;gap:10px}.hour-btn{padding:10px 20px;border:2px solid var(--kp-gray-200);border-radius:var(--kp-radius-sm);background:var(--kp-white);font-size:15px;font-weight:700;font-family:inherit;color:var(--kp-gray-600);cursor:pointer;transition:all .2s}.hour-btn:hover{border-color:var(--kp-green);color:var(--kp-green)}.hour-btn.selected{border-color:var(--kp-green);background:var(--kp-green);color:#fff}.confirm-grid{display:flex;flex-direction:column;gap:20px}.confirm-section{background:var(--kp-gray-50);border-radius:var(--kp-radius);padding:16px 20px}.confirm-section h3{font-size:14px;font-weight:700;color:var(--kp-green-700);margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--kp-gray-200)}.confirm-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:14px}.confirm-row span{color:var(--kp-gray-500)}.confirm-row strong{color:var(--kp-gray-800);font-weight:600}.nav-buttons{display:flex;align-items:center;margin-top:32px;padding-top:20px;border-top:1px solid var(--kp-gray-100)}.nav-spacer{flex:1 1}.btn-back,.btn-confirm,.btn-primary{padding:12px 28px;border-radius:var(--kp-radius-sm);font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:var(--kp-green);color:#fff}.btn-primary:hover{background:var(--kp-green-dark);transform:translateY(-1px);box-shadow:0 4px 12px rgba(27,140,61,.3)}.btn-confirm{background:var(--kp-green);color:#fff;padding:14px 32px;font-size:16px}.btn-confirm:hover{background:var(--kp-green-dark);box-shadow:0 4px 12px rgba(27,140,61,.3)}.btn-confirm:disabled{opacity:.6;cursor:not-allowed}.btn-back{background:transparent;color:var(--kp-gray-500);border:1.5px solid var(--kp-gray-200)}.btn-back:hover{border-color:var(--kp-gray-400);color:var(--kp-gray-700)}.success-card{text-align:center;padding:48px 32px}.success-icon{width:72px;height:72px;border-radius:50%;background:var(--kp-green);color:#fff;font-size:32px;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;animation:scaleIn .4s ease}.success-card h2{font-size:24px;color:var(--kp-green-700);margin-bottom:12px}.success-card p{color:var(--kp-gray-600);font-size:15px;margin-bottom:24px}.success-details{background:var(--kp-green-50);border-radius:var(--kp-radius);padding:20px 24px;text-align:left;margin-bottom:20px}.detail-row{padding:6px 0}.detail-label{color:var(--kp-gray-500)}.detail-value{font-weight:700;color:var(--kp-green-800)}.success-note{font-size:13px;color:var(--kp-gray-400);margin-bottom:20px}.success-card .btn-primary{margin-top:8px}body:has(.kp-layout){background:var(--layout-content-bg,#f1f5f9);overflow:hidden}[data-theme=dark],[data-theme=dark] body{color:var(--layout-text-primary,#f1f5f9)}.admin-container{max-width:1200px;margin:0 auto;padding:0 20px 40px;font-family:Nunito,-apple-system,sans-serif;position:relative}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--kp-gray-200);margin-bottom:20px}.admin-header-left{display:flex;align-items:center;gap:12px}.admin-logo{display:flex;gap:4px}.admin-logo-k,.admin-logo-p{font-size:22px;font-weight:800;color:var(--kp-green)}.admin-badge{background:var(--kp-green-light);color:var(--kp-green-700);font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px}.header-link{font-size:13px;color:var(--kp-gray-500);text-decoration:none;padding:6px 14px;border:1px solid var(--kp-gray-200);border-radius:6px;transition:all .2s}.header-link:hover{border-color:var(--kp-green);color:var(--kp-green)}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;margin-bottom:20px}@media (max-width:600px){.stats-row{grid-template-columns:repeat(2,1fr)}}.stat-card{background:var(--kp-white);border-radius:10px;padding:14px 18px;border:1px solid var(--kp-gray-100);border-left:3px solid var(--kp-gray-300)}.stat-number{font-size:26px;font-weight:800;color:var(--kp-gray-800);display:block}.stat-label{font-size:12px;color:var(--kp-gray-500);font-weight:600}.toolbar{justify-content:space-between;margin-bottom:20px;background:var(--kp-white);padding:12px 16px;border-radius:10px;border:1px solid var(--kp-gray-100)}.toolbar,.toolbar-left{gap:12px}.toolbar,.toolbar-left,.toolbar-right{display:flex;align-items:center;flex-wrap:wrap}.toolbar-right{gap:8px}.view-toggle{display:flex;background:var(--kp-gray-100);border-radius:8px;padding:2px}.view-toggle button{padding:6px 16px;border:none;border-radius:6px;background:transparent;font-family:inherit;font-size:13px;font-weight:700;color:var(--kp-gray-500);cursor:pointer;transition:all .2s}.view-toggle button.active{background:var(--kp-white);color:var(--kp-green);box-shadow:0 1px 3px rgba(0,0,0,.08)}.nav-group{gap:4px}.nav-btn,.nav-group{display:flex;align-items:center}.nav-btn{width:32px;height:32px;border:1px solid var(--kp-gray-200);border-radius:6px;background:var(--kp-white);font-size:18px;cursor:pointer;justify-content:center;color:var(--kp-gray-600);transition:all .2s}.nav-btn:hover{border-color:var(--kp-green);color:var(--kp-green)}.today-btn{padding:5px 12px;border:1px solid var(--kp-gray-200);border-radius:6px;background:var(--kp-white);font-family:inherit;font-size:13px;font-weight:700;color:var(--kp-gray-600);cursor:pointer;transition:all .2s}.today-btn:hover{border-color:var(--kp-green);color:var(--kp-green)}.toolbar-date{font-size:15px;font-weight:700;color:var(--kp-gray-700);text-transform:capitalize}.filter-select{padding:7px 12px;border:1px solid var(--kp-gray-200);border-radius:6px;font-family:inherit;font-size:13px;color:var(--kp-gray-700);background:var(--kp-white);cursor:pointer;outline:none}.filter-select:focus{border-color:var(--kp-green)}.search-input{min-width:180px;cursor:text}.empty,.loading{text-align:center;padding:60px 20px;color:var(--kp-gray-400);font-size:15px}.empty-icon{font-size:48px;display:block;margin-bottom:12px}.empty-hint{font-size:13px;color:var(--kp-gray-400);text-transform:capitalize}.day-view{background:var(--kp-white);border-radius:12px;border:1px solid var(--kp-gray-100);overflow:hidden}.hour-row{display:flex;min-height:48px;border-bottom:1px solid var(--kp-gray-100)}.hour-row:last-child{border-bottom:none}.hour-row.has-items{background:var(--kp-gray-50)}.hour-label{width:70px;min-width:70px;padding:12px 16px;font-size:13px;font-weight:700;color:var(--kp-gray-400);border-right:1px solid var(--kp-gray-100)}.hour-content,.hour-label{display:flex;align-items:flex-start}.hour-content{flex:1 1;flex-wrap:wrap;gap:8px;padding:8px 12px}.hour-empty{height:32px}.appointment-card{flex:1 1;min-width:220px;max-width:360px;background:var(--kp-white);border-radius:8px;padding:10px 14px;border:1px solid var(--kp-gray-200);cursor:pointer;transition:all .2s}.appointment-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.08);transform:translateY(-1px)}.appt-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.appt-pet{font-size:15px;font-weight:700;color:var(--kp-gray-800)}.appt-status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.appt-tutor{font-size:12px;color:var(--kp-gray-500);margin-bottom:6px;display:block}.appt-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.appt-tag{font-size:11px;padding:2px 8px;border-radius:4px;background:var(--kp-green-light);color:var(--kp-green-700);font-weight:600}.appt-tag.taxi{background:#fef3c7;color:#92400e}.appt-bottom{display:flex;justify-content:space-between;align-items:center}.appt-behavior{font-size:12px;color:var(--kp-gray-500)}.appt-quick-actions{display:flex;gap:4px}.quick-btn{width:26px;height:26px;border-radius:6px;border:none;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.quick-btn.start{background:#fef3c7;color:#92400e}.quick-btn.start:hover{background:#fde68a}.quick-btn.done{background:#d1fae5;color:#065f46}.quick-btn.done:hover{background:#a7f3d0}.week-view{background:var(--kp-white);border-radius:12px;border:1px solid var(--kp-gray-100);overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.week-header{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--kp-gray-100)}.week-day-header{padding:12px 8px;text-align:center;cursor:pointer;transition:background .2s}.week-day-header:hover{background:var(--kp-gray-50)}.week-day-header.today{background:var(--kp-green-50)}.week-day-header.today .wdh-date{color:var(--kp-green)}.wdh-weekday{display:block;font-size:11px;color:var(--kp-gray-400);text-transform:uppercase;font-weight:700}.wdh-date{display:block;font-size:20px;font-weight:800;color:var(--kp-gray-700);margin:2px 0}.wdh-count{display:inline-block;font-size:11px;font-weight:700;background:var(--kp-green);color:#fff;border-radius:10px;padding:1px 8px}.week-body{display:grid;grid-template-columns:repeat(7,1fr);min-height:300px;align-items:start}.week-column{padding:8px 6px;border-right:1px solid var(--kp-gray-100);display:flex;flex-direction:column;gap:6px;min-height:200px}.week-column:last-child{border-right:none}.week-card{background:var(--kp-gray-50);border-radius:6px;padding:8px 10px;cursor:pointer;transition:all .2s;border:1px solid var(--kp-gray-100)}.week-card:hover{background:var(--kp-white);box-shadow:0 2px 8px rgba(0,0,0,.06)}.wc-time{font-size:11px;font-weight:700;color:var(--kp-gray-400)}.wc-pet{font-size:13px;font-weight:700;color:var(--kp-gray-800)}.wc-services{font-size:11px;color:var(--kp-gray-500)}.detail-overlay{position:fixed;inset:0;background:rgba(0,0,0,.3);z-index:500;display:flex;justify-content:flex-end;animation:fadeOverlay .2s ease}@keyframes fadeOverlay{0%{opacity:0}to{opacity:1}}.detail-panel{width:420px;max-width:90vw;background:var(--kp-white);height:100vh;overflow-y:auto;padding:28px 24px;position:relative;box-shadow:-8px 0 30px rgba(0,0,0,.1);animation:slideIn .25s ease}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}.detail-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:8px;border:1px solid var(--kp-gray-200);background:var(--kp-white);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--kp-gray-500);transition:all .2s}.detail-close:hover{border-color:var(--kp-gray-400);color:var(--kp-gray-800)}.detail-header{margin-bottom:16px;display:flex;flex-direction:column;gap:8px;padding-right:32px}.detail-pet-name{font-size:22px;font-weight:800;color:var(--kp-gray-800);display:block}.detail-breed{font-size:14px;color:var(--kp-gray-500)}.detail-status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:700}.detail-section{margin-bottom:20px}.detail-section h4{font-size:12px;font-weight:700;color:var(--kp-gray-400);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--kp-gray-100)}.detail-row{display:flex;justify-content:space-between;padding:4px 0;font-size:14px}.detail-row span{color:var(--kp-gray-500)}.detail-row strong{color:var(--kp-gray-800);font-weight:600;text-align:right;max-width:60%}.status-buttons{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.status-btn{padding:8px 12px;border-radius:8px;border:2px solid;background:transparent;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:6px}.status-btn:hover{opacity:.85}.status-btn.active{color:#fff!important}.status-btn:disabled{opacity:.5;cursor:not-allowed}.whatsapp-btn{display:block;text-align:center;padding:12px;border-radius:8px;background:#25d366;color:#fff;font-weight:700;font-size:14px;text-decoration:none;transition:all .2s;margin-top:12px}.whatsapp-btn:hover{background:#1da851}@media (max-width:768px){.week-view{overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.week-body,.week-header{grid-template-columns:repeat(7,minmax(110px,1fr));min-width:770px}.wdh-date{font-size:16px}.week-card{padding:6px 4px}.wc-services{display:none}.appointment-card{min-width:160px}.toolbar{flex-direction:column;align-items:stretch}.toolbar-left,.toolbar-right{justify-content:center}.toolbar-right{display:flex;flex-wrap:wrap;gap:8px;width:100%}}.edit-link{float:right;font-size:12px;font-weight:700;color:var(--kp-green);background:none;border:1px solid var(--kp-green);border-radius:6px;padding:2px 10px;cursor:pointer;text-transform:none;letter-spacing:0;transition:all .2s}.edit-link:hover{background:var(--kp-green);color:#fff}.edit-form{display:flex;flex-direction:column;gap:12px}.edit-field label{display:block;font-size:13px;font-weight:700;color:var(--kp-gray-600);margin-bottom:4px}.edit-field input[type=date]{width:100%;padding:8px 12px;border:1.5px solid var(--kp-gray-200);border-radius:8px;font-size:14px;font-family:inherit;outline:none;transition:border-color .2s}.edit-field input[type=date]:focus{border-color:var(--kp-green)}.edit-hours{display:flex;flex-wrap:wrap;gap:6px}.edit-hour-btn{padding:6px 14px;border:1.5px solid var(--kp-gray-200);border-radius:6px;background:var(--kp-white);font-size:13px;font-weight:700;font-family:inherit;color:var(--kp-gray-600);cursor:pointer;transition:all .2s}.edit-hour-btn:hover{border-color:var(--kp-green);color:var(--kp-green)}.edit-hour-btn.selected{border-color:var(--kp-green);background:var(--kp-green);color:#fff}.edit-error{font-size:13px;color:var(--kp-coral);font-weight:600;margin:0}.edit-actions{display:flex;gap:8px}.edit-cancel{flex:1 1;padding:8px;border:1.5px solid var(--kp-gray-200);border-radius:8px;background:var(--kp-white);font-family:inherit;font-size:13px;font-weight:700;color:var(--kp-gray-500);cursor:pointer;transition:all .2s}.edit-cancel:hover{border-color:var(--kp-gray-400)}.edit-save{flex:1 1;padding:8px;border:none;border-radius:8px;background:var(--kp-green);font-family:inherit;font-size:13px;font-weight:700;color:#fff;cursor:pointer;transition:all .2s}.edit-save:hover{background:var(--kp-green-dark)}.edit-save:disabled{opacity:.6;cursor:not-allowed}.hour-btn.disabled{opacity:.35;cursor:not-allowed;pointer-events:none;background:var(--kp-gray-100);border-color:var(--kp-gray-200);color:var(--kp-gray-400)}.package-btn{padding:7px 16px;border-radius:8px;border:none;background:var(--kp-green);color:#fff;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s}.package-btn:hover{background:var(--kp-green-dark);transform:translateY(-1px);box-shadow:0 2px 8px rgba(27,140,61,.3)}.admin-header-right{display:flex;align-items:center;gap:10px}.pkg-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.pkg-field{display:flex;flex-direction:column;gap:4px}.pkg-field label{font-size:12px;font-weight:700;color:var(--kp-gray-500)}.pkg-field input,.pkg-select{padding:8px 12px;border:1.5px solid var(--kp-gray-200);border-radius:8px;font-size:14px;font-family:inherit;outline:none;width:100%;transition:border-color .2s}.pkg-field input:focus,.pkg-select:focus{border-color:var(--kp-green)}.pkg-select{background:var(--kp-white);cursor:pointer}.pkg-success{padding:20px 0}.pkg-dates-list{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.pkg-date-tag{padding:4px 12px;border-radius:6px;background:var(--kp-green-light);color:var(--kp-green-700);font-size:13px;font-weight:600}.appt-tag.pkg{background:#ede9fe;color:#6d28d9}.admin-tabs{display:flex;gap:4px;padding:0 24px;border-bottom:2px solid #e5e7eb;margin-bottom:0}.admin-tab{padding:12px 20px;font-size:14px;font-weight:700;background:none;cursor:pointer;color:#6b7280;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s}.admin-tab.active{color:#10b981;border-bottom-color:#10b981}.admin-tab:hover:not(.active){color:#374151}.clientes-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}@media (max-width:900px){.clientes-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:580px){.clientes-grid{grid-template-columns:1fr}}.cliente-card{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:12px 14px;cursor:pointer;transition:box-shadow .15s,border-color .15s;min-width:0}.cliente-card:hover{border-color:#10b981;box-shadow:0 2px 8px rgba(16,185,129,.1)}.cliente-card-avatar{width:38px;height:38px;border-radius:50%;background:#ecfdf5;color:#065f46;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:800;flex-shrink:0}.cliente-card-info{flex:1 1;min-width:0}.cliente-card-nome{display:block;font-size:14px;font-weight:700;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cliente-card-tel{display:block;font-size:12px;color:#6b7280;margin-top:1px}.cliente-card-cidade{display:block;font-size:11px;color:#9ca3af;margin-top:1px}.cliente-card-count{text-align:center;flex-shrink:0}.cliente-card-count span{display:block;font-size:18px;font-weight:800;color:#10b981;line-height:1}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeOverlay .2s ease}.modal-content{background:#fff;border-radius:14px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.18);animation:scaleIn .2s ease;padding:24px}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.modal-header h3{font-size:16px;font-weight:800;color:#111827;margin:0}.modal-close{width:32px;height:32px;border-radius:8px;border:1.5px solid #e5e7eb;background:#f9fafb;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280;flex-shrink:0;transition:all .15s}.modal-close:hover{background:#fee2e2;border-color:#ef4444;color:#ef4444}.modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:8px;padding-top:16px;border-top:1px solid #e5e7eb}.btn-secondary{background:#f3f4f6;border:1.5px solid #e5e7eb;border-radius:8px;padding:8px 18px;font-size:13px;font-weight:600;color:#374151;cursor:pointer;font-family:inherit;transition:all .15s}.btn-secondary:hover{background:#e5e7eb}.kanban-container{display:flex;flex-direction:column;gap:0;height:100%}.kanban-header{justify-content:space-between;padding:16px 24px;background:#fff;border-bottom:1px solid #e5e7eb;flex-wrap:wrap}.kanban-header,.kanban-header-left{display:flex;align-items:center;gap:12px}.kanban-header-right{display:flex;align-items:center;gap:10px}.kanban-date-input{border:1.5px solid #d1d5db;border-radius:8px;padding:7px 12px;font-size:14px;font-family:inherit;color:#374151;background:#f9fafb;cursor:pointer}.kanban-date-input:focus{outline:none;border-color:#10b981}.kanban-date-label{font-size:14px;color:#6b7280;font-weight:600;text-transform:capitalize}.kanban-badge-concluido{background:#ecfdf5;color:#065f46;border-radius:20px;padding:4px 12px;font-size:12px;font-weight:700}.kanban-config-btn{background:#f3f4f6;border:1.5px solid #e5e7eb;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600;color:#374151;cursor:pointer;font-family:inherit;transition:all .15s}.kanban-config-btn:hover{background:#e5e7eb;border-color:#d1d5db}.kanban-loading{padding:48px;text-align:center;color:#9ca3af;font-size:15px}.kanban-board{display:flex;gap:14px;padding:20px 24px;overflow-x:auto;flex:1 1;align-items:flex-start;min-height:400px}.kanban-column{display:flex;flex-direction:column;min-width:240px;max-width:280px;flex:1 1;background:#f9fafb;border-radius:12px;overflow:hidden;border:2px solid transparent;transition:border-color .15s,box-shadow .15s}.kanban-column.drag-over{border-color:#10b981;box-shadow:0 0 0 3px rgba(16,185,129,.15)}.kanban-column.ultima-fase{background:#f0fdf4}.kanban-col-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#fff;border-bottom:1px solid #e5e7eb}.kanban-col-title{font-size:13px;font-weight:700;letter-spacing:.3px}.kanban-col-count{min-width:22px;height:22px;border-radius:11px;padding:0 7px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff}.kanban-col-body{display:flex;flex-direction:column;gap:10px;padding:12px;min-height:80px}.kanban-col-empty{text-align:center;font-size:12px;color:#9ca3af;padding:20px 10px;border:1.5px dashed #d1d5db;border-radius:8px;margin:4px 0}.kanban-card{background:#fff;border-radius:10px;padding:12px 14px;box-shadow:0 1px 4px rgba(0,0,0,.08);cursor:-webkit-grab;cursor:grab;border-left:3px solid #e5e7eb;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:box-shadow .15s,opacity .15s,transform .15s}.kanban-card:hover{box-shadow:0 4px 14px rgba(0,0,0,.12);transform:translateY(-1px)}.kanban-card.dragging{opacity:.45;transform:rotate(2deg);cursor:-webkit-grabbing;cursor:grabbing}.kanban-card.status-agendado{border-left-color:#3b82f6}.kanban-card.status-atendimento{border-left-color:#f59e0b}.kanban-card.status-concluido{border-left-color:#10b981;opacity:.85}.kcard-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.kcard-horario{font-size:11px;font-weight:700;color:#6b7280}.kcard-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.kcard-pet{font-size:14px;font-weight:800;color:#111827;margin-bottom:2px}.kcard-tutor{font-size:12px;color:#6b7280;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kcard-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px}.kcard-tag{background:#f3f4f6;color:#374151;border-radius:4px;padding:2px 7px;font-size:10px;font-weight:600}.kcard-behavior{font-size:11px;color:#9ca3af;margin-top:4px}.kcard-taxi{font-size:11px;color:#6b7280;margin-top:3px}.kcard-concluido-badge{margin-top:6px;font-size:11px;font-weight:700;color:#065f46;background:#d1fae5;border-radius:4px;padding:2px 8px;display:inline-block}.kanban-config-modal{max-width:460px}.kanban-config-hint{font-size:13px;color:#6b7280;margin:-4px 0 16px;line-height:1.5}.kanban-fases-list{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.kanban-fase-item{display:flex;align-items:center;gap:8px;background:#f9fafb;border-radius:8px;padding:10px 12px;border:1px solid #e5e7eb}.kanban-fase-num{width:22px;height:22px;border-radius:50%;background:#e5e7eb;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#6b7280;flex-shrink:0}.kanban-fase-nome{flex:1 1;font-size:13px;font-weight:600;color:#374151}.kanban-fase-badge{font-size:11px;color:#10b981;font-weight:700}.kanban-fase-actions{display:flex;gap:4px}.fase-btn{width:28px;height:28px;border-radius:6px;border:1.5px solid #e5e7eb;background:#fff;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;font-family:inherit;transition:all .15s}.fase-btn:hover:not(:disabled){background:#f3f4f6;border-color:#d1d5db}.fase-btn:disabled{opacity:.35;cursor:default}.fase-btn.danger:hover:not(:disabled){background:#fef2f2;border-color:#ef4444;color:#ef4444}.kanban-add-fase{display:flex;gap:8px;margin-bottom:20px}.kanban-add-input{flex:1 1;border:1.5px solid #d1d5db;border-radius:8px;padding:8px 12px;font-size:13px;font-family:inherit;color:#374151}.kanban-add-input:focus{outline:none;border-color:#10b981}.kanban-add-btn{background:#10b981;color:#fff;border:none;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;white-space:nowrap;transition:background .15s}.kanban-add-btn:hover:not(:disabled){background:#059669}.kanban-add-btn:disabled{opacity:.4;cursor:default}@media (max-width:768px){.kanban-board{padding:12px;gap:10px}.kanban-column{min-width:200px}.kanban-header{padding:12px 16px}}.cliente-card-count small{font-size:10px;color:#9ca3af;font-weight:600}.edit-hour-btn,.nav-btn,.quick-btn,button,input,select,textarea{min-height:44px}@media (max-width:480px){.admin-container{padding:0 12px 24px}.admin-header{flex-direction:column;align-items:flex-start;gap:12px}.admin-header-left{width:100%}.admin-header-right{width:100%;justify-content:space-between}.stats-row{grid-template-columns:repeat(2,1fr);gap:10px}.toolbar{padding:12px;gap:10px}.toolbar,.toolbar-left{flex-direction:column;align-items:stretch}.toolbar-left{width:100%}.toolbar-right{display:flex;flex-direction:column;width:100%;gap:8px}.toolbar-right .filter-select,.toolbar-right .search-input{width:100%;min-width:0}.nav-group,.view-toggle{width:100%;justify-content:center}.toolbar-date{text-align:center;width:100%}.filter-select{width:100%}.day-view{border-radius:8px}.hour-row{min-height:60px;flex-direction:column}.hour-label{border-right:none;border-bottom:1px solid var(--kp-gray-100)}.hour-content,.hour-label{width:100%;padding:8px 12px}.hour-content{flex-direction:column}.appointment-card{min-width:100%;max-width:100%;padding:12px}.week-view{overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.week-body,.week-header{min-width:700px;grid-template-columns:repeat(7,minmax(100px,1fr))}.detail-panel{width:100%;max-width:100%;height:90vh;bottom:0;position:fixed;border-radius:12px 12px 0 0;animation:slideUpFromBottom .3s ease;z-index:101}@keyframes slideUpFromBottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}.detail-overlay{justify-content:flex-end;align-items:flex-end}.detail-close{top:12px;right:12px}.pkg-fields{grid-template-columns:1fr}.edit-hours{gap:8px}.edit-hour-btn{flex:1 1;min-width:60px}.admin-logo-k,.admin-logo-p{font-size:18px}.toolbar-date{font-size:14px}.appt-pet{font-size:13px}.detail-pet-name{font-size:18px}.clientes-grid{grid-template-columns:1fr}.kp-card{padding:24px 16px}.detail-section{margin-bottom:16px}}@media (max-width:768px){.admin-container{max-width:100%;padding:0 16px 32px}.stats-row{grid-template-columns:repeat(2,1fr);gap:12px}.toolbar{gap:10px}.toolbar-left{flex-wrap:wrap}.appointment-card{min-width:180px;padding:10px 12px}.appt-top{margin-bottom:4px}.appt-pet{font-size:14px}.week-view{overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.week-body,.week-header{grid-template-columns:repeat(7,minmax(110px,1fr));min-width:770px}.wdh-date{font-size:14px}.week-card{min-height:70px}.wc-services{display:none}.toolbar-right{display:flex;flex-wrap:wrap;gap:8px;width:100%}.toolbar-right .filter-select{flex:1 1;min-width:140px}.detail-panel{width:320px;max-width:85vw}.pkg-fields{grid-template-columns:1fr}.clientes-grid{grid-template-columns:repeat(2,1fr);gap:12px}.admin-tabs{overflow-x:auto;padding:0 16px}.admin-tab{white-space:nowrap;padding:10px 16px}}@media (min-width:769px) and (max-width:1024px){.admin-container{max-width:100%}.stats-row{grid-template-columns:repeat(4,1fr)}.detail-panel{width:380px}.clientes-grid{grid-template-columns:repeat(3,1fr);gap:12px}}@media (min-width:1025px){.detail-panel{width:420px}.clientes-grid{grid-template-columns:repeat(4,1fr)}}@media (max-height:500px) and (orientation:landscape){.detail-panel{height:95vh;overflow-y:auto}.admin-header{padding:8px 0;margin-bottom:12px}.stats-row{gap:8px;margin-bottom:12px}.stat-card{padding:10px 12px}.stat-number{font-size:20px}.stat-label{font-size:10px}}@media (hover:none) and (pointer:coarse){.appointment-card:hover,.cliente-card:hover,.nav-btn:hover,.quick-btn:hover,.week-card:hover{transform:none;box-shadow:none}}@media (max-width:768px){.detail-overlay{position:fixed;z-index:100}.detail-panel{position:fixed;z-index:101}}.admin-container,.day-view,.week-view{-webkit-overflow-scrolling:touch}.servicos-container{display:grid;grid-template-columns:260px 1fr;grid-gap:20px;gap:20px;padding:0 24px 24px;align-items:start}.servicos-main,.servicos-sidebar{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.modal-categoria{width:380px}.modal-servico{width:480px}.modal-servico[style*="680"]{width:680px}.modal-import{width:560px}@media (max-width:480px){.servicos-container{display:flex!important;flex-direction:column!important;grid-template-columns:unset!important;gap:16px!important;padding:0 12px 24px!important}.servicos-sidebar{max-height:300px;overflow-y:auto}.servicos-main,.servicos-sidebar{width:100%!important;border-radius:12px}.servicos-main{overflow-x:auto}.modal-categoria,.modal-import,.modal-servico{width:95vw!important;max-width:95vw!important;left:50%!important;transform:translateX(-50%)!important}table[style*=borderCollapse]{width:100%;font-size:12px}table[style*=borderCollapse] thead{position:-webkit-sticky;position:sticky;top:0;background:#f9fafb;z-index:10}table[style*=borderCollapse] thead tr th{font-size:10px!important;padding:6px!important;white-space:nowrap}table[style*=borderCollapse] tbody tr td{padding:6px!important;font-size:11px!important;word-break:break-word}table[style*=borderCollapse] tbody tr td:nth-child(3),table[style*=borderCollapse] thead tr th:nth-child(3){display:none}table[style*=borderCollapse] tbody tr td:first-child,table[style*=borderCollapse] thead tr th:first-child{width:24px!important;padding:6px 4px!important}table[style*=borderCollapse] tbody tr td:nth-child(2),table[style*=borderCollapse] thead tr th:nth-child(2){min-width:120px}table[style*=borderCollapse] tbody tr td:last-child{padding:6px 4px!important;width:80px!important}table[style*=borderCollapse] tbody tr td:last-child>div{flex-direction:column;gap:3px!important}table[style*=borderCollapse] tbody tr td:last-child button{padding:3px 4px!important;font-size:10px!important;flex:1 1!important}.servicos-main>table{min-width:100%}.edit-save,.package-btn{font-size:13px!important;padding:8px 12px!important}.servicos-sidebar button{padding:4px 8px!important;font-size:11px!important}}@media (min-width:481px) and (max-width:768px){.servicos-container{grid-template-columns:180px 1fr!important;gap:12px;padding:0 16px 24px!important}.modal-categoria,.modal-import,.modal-servico{width:85vw!important;max-width:85vw!important}table[style*=borderCollapse]{font-size:13px}table[style*=borderCollapse] tbody tr td,table[style*=borderCollapse] thead tr th{font-size:12px!important;padding:8px!important}table[style*=borderCollapse] tbody tr td:nth-child(3),table[style*=borderCollapse] thead tr th:nth-child(3){display:table-cell!important}div[style*=overflowX]{overflow-x:auto!important;-webkit-overflow-scrolling:touch}}@media (min-width:769px){.servicos-container{display:grid!important;grid-template-columns:260px 1fr!important;grid-gap:20px!important;gap:20px!important;padding:0 24px 24px!important}.modal-categoria{width:380px!important}.modal-servico{width:480px!important}.modal-servico[style*="680"]{width:680px!important}.modal-import{width:560px!important}table[style*=borderCollapse] tbody tr td:nth-child(3),table[style*=borderCollapse] thead tr th:nth-child(3){display:table-cell!important}table[style*=borderCollapse]{font-size:13px}table[style*=borderCollapse] thead tr th{font-size:12px!important;padding:10px 16px!important}table[style*=borderCollapse] tbody tr td{padding:10px 16px!important;font-size:13px!important}}input[type=date],input[type=email],input[type=tel],input[type=text],select,textarea{font-size:16px}button,input[type=button],input[type=submit]{cursor:pointer}.admin-container,.appointment-card,.toolbar,button,input[type=button],input[type=submit]{-webkit-user-select:none;-moz-user-select:none;user-select:none}.cliente-card-tel,.detail-row strong,input,textarea{-webkit-user-select:text;-moz-user-select:text;user-select:text}@supports (padding:max(0px)){.admin-container{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.detail-panel{padding-bottom:max(24px,env(safe-area-inset-bottom))}}