:root{--ted-navy: #1B3A4B;--ted-muted: #50575e;--ted-border: #c5c8ce;--ted-gold: #C4A35A;--ted-surface: #F7F5F1;--ted-card: #FFFFFF;--ted-text-primary: #1A1A1A;--ted-text-secondary: #50575e;--ted-text-on-navy: #FFFFFF;--ted-text-on-gold: #1B3A4B;--ted-shadow: 0 2px 8px rgba(27, 58, 75, .08);--ted-shadow-hover: 0 4px 16px rgba(27, 58, 75, .12);--ted-radius: 8px;--ted-radius-lg: 12px;--ted-success: #10b981;--ted-warning: #f59e0b;--ted-error: #ef4444;--ted-gray-50: #f9fafb;--ted-gray-100: #f3f4f6;--ted-gray-200: #e5e7eb;--ted-gray-300: #d1d5db;--ted-gray-400: #9ca3af;--ted-gray-500: #6b7280;--ted-gray-600: #4b5563}*{margin:0;padding:0;box-sizing:border-box}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--ted-surface);color:var(--ted-text-primary);line-height:1.5}.ted-container{max-width:1400px;margin:0 auto;padding:0 1.5rem}.ted-app{min-height:100vh;display:flex;flex-direction:column}.ted-header{background-color:var(--ted-navy);color:var(--ted-text-on-navy);padding:1.5rem 0;box-shadow:var(--ted-shadow);position:relative;z-index:100}.ted-header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.ted-header h1{font-size:1.5rem;font-weight:700;margin:0;color:var(--ted-text-on-navy)}.ted-tagline{font-size:.875rem;color:var(--ted-gold);opacity:.95;margin-top:.25rem}.ted-header-actions{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.ted-main{flex:1;padding:2rem 0}.ted-card{background:var(--ted-card);border-radius:var(--ted-radius);box-shadow:var(--ted-shadow);padding:1.5rem;transition:box-shadow .2s}.ted-card:hover{box-shadow:var(--ted-shadow-hover)}.ted-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--ted-border)}.ted-card-title{font-size:1.25rem;font-weight:600;color:var(--ted-navy);margin:0}.ted-btn{padding:.75rem 1.5rem;border:none;border-radius:var(--ted-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit;display:inline-flex;align-items:center;gap:.5rem;text-decoration:none}.ted-btn:disabled{opacity:.5;cursor:not-allowed}.ted-btn-primary{background-color:var(--ted-gold);color:var(--ted-text-on-gold)}.ted-btn-primary:hover:not(:disabled){background-color:#b08d45;transform:translateY(-1px);box-shadow:0 4px 8px #c4a35a4d}.ted-btn-secondary{background-color:var(--ted-card);color:var(--ted-navy);border:1px solid var(--ted-border)}.ted-btn-secondary:hover:not(:disabled){background-color:var(--ted-surface);border-color:var(--ted-navy)}.ted-btn-danger{background-color:var(--ted-error);color:#fff}.ted-btn-danger:hover:not(:disabled){background-color:#dc2626}.ted-form-group{margin-bottom:1.25rem}.ted-label{display:block;font-weight:600;margin-bottom:.5rem;color:var(--ted-navy);font-size:.875rem}.ted-input,.ted-select,.ted-textarea{width:100%;padding:.75rem;border:1px solid var(--ted-border);border-radius:var(--ted-radius);font-size:1rem;font-family:inherit;color:var(--ted-text-primary);background:var(--ted-card);transition:border-color .2s,box-shadow .2s}.ted-input:focus,.ted-select:focus,.ted-textarea:focus{outline:none;border-color:var(--ted-gold);box-shadow:0 0 0 3px #c4a35a1a}.ted-textarea{resize:vertical;min-height:100px}.ted-login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--ted-surface);padding:1rem}.ted-login-card{background:var(--ted-card);border-radius:var(--ted-radius-lg);box-shadow:var(--ted-shadow-hover);width:100%;max-width:420px;padding:2.5rem}.ted-login-header{text-align:center;margin-bottom:2rem}.ted-login-title{color:var(--ted-navy);font-size:1.75rem;margin-bottom:.5rem;font-weight:700}.ted-login-subtitle{color:var(--ted-gold);font-size:.875rem}.ted-table{width:100%;border-collapse:collapse}.ted-table th{text-align:left;padding:.75rem;color:var(--ted-navy);font-weight:600;border-bottom:2px solid var(--ted-border)}.ted-table td{padding:.75rem;border-bottom:1px solid var(--ted-border)}.ted-table tr:hover{background-color:var(--ted-surface)}.ted-badge{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.ted-badge-primary{background-color:var(--ted-navy);color:var(--ted-text-on-navy)}.ted-badge-gold{background-color:var(--ted-gold);color:var(--ted-text-on-gold)}.ted-badge-success{background-color:#d1fae5;color:#065f46}.ted-badge-warning{background-color:#fef3c7;color:#92400e}.ted-badge-error{background-color:#fee2e2;color:#991b1b}.ted-message{padding:1rem;border-radius:var(--ted-radius);margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.ted-message-error{background-color:#fee2e2;color:#991b1b;border-left:4px solid var(--ted-error)}.ted-message-success{background-color:#d1fae5;color:#065f46;border-left:4px solid var(--ted-success)}.ted-message-warning{background-color:#fef3c7;color:#92400e;border-left:4px solid var(--ted-warning)}.ted-message-info{background-color:#e0e7ff;color:#3730a3;border-left:4px solid var(--ted-navy)}.ted-loading{display:flex;align-items:center;justify-content:center;padding:3rem;color:var(--ted-muted);font-size:1.125rem}.ted-loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--ted-surface);color:var(--ted-navy);font-size:1.25rem}.ted-loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#1b3a4b80;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem;z-index:10000}.ted-empty{text-align:center;padding:3rem 1.5rem;color:var(--ted-muted)}.ted-empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.ted-empty-title{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;color:var(--ted-text-primary)}.ted-empty-text{font-size:.875rem;color:var(--ted-muted)}.ted-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#1b3a4b99;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:1000}.ted-modal{background-color:var(--ted-card);border-radius:var(--ted-radius-lg);padding:2rem;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #1b3a4b26}.ted-modal-header{margin-bottom:1.5rem}.ted-modal-title{color:var(--ted-navy);font-size:1.5rem;font-weight:700;margin:0}.ted-modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:2rem}.ted-user-info{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background-color:#ffffff1a;border-radius:var(--ted-radius)}.ted-user-email{font-size:.875rem;color:var(--ted-text-on-navy)}.ted-text-center{text-align:center}.ted-text-right{text-align:right}.ted-font-bold{font-weight:700}.ted-font-semibold{font-weight:600}.ted-text-sm{font-size:.875rem}.ted-text-xs{font-size:.75rem}.ted-text-lg{font-size:1.125rem}.ted-text-xl{font-size:1.25rem}.ted-mt-1{margin-top:.5rem}.ted-mt-2{margin-top:1rem}.ted-mt-4{margin-top:2rem}.ted-mb-1{margin-bottom:.5rem}.ted-mb-2{margin-bottom:1rem}.ted-mb-4{margin-bottom:2rem}.ted-flex{display:flex}.ted-flex-col{flex-direction:column}.ted-items-center{align-items:center}.ted-justify-between{justify-content:space-between}.ted-gap-1{gap:.5rem}.ted-gap-2{gap:1rem}.ted-gap-3{gap:1.5rem}.ted-grid{display:grid}.ted-grid-cols-2{grid-template-columns:repeat(2,1fr)}.ted-grid-cols-3{grid-template-columns:repeat(3,1fr)}@media (max-width: 768px){.ted-header{padding:1rem 0}.ted-header h1{font-size:1.25rem}.ted-header-content{flex-direction:column;align-items:flex-start}.ted-main{padding:1rem 0}.ted-container{padding:0 1rem}.ted-card{padding:1rem}.ted-btn{width:100%;justify-content:center}.ted-modal{padding:1.5rem}.ted-modal-actions{flex-direction:column-reverse}.ted-grid-cols-2,.ted-grid-cols-3{grid-template-columns:1fr}}a.ted-link{color:var(--ted-navy);text-decoration:none;font-weight:500;transition:color .2s}a.ted-link:hover{color:var(--ted-gold)}.ted-premium-surface{background:linear-gradient(135deg,var(--ted-surface) 0%,#f9f7f4 100%);border:1px solid var(--ted-border)}.ted-craft-accent{background:linear-gradient(135deg,var(--ted-navy) 0%,#2a5468 100%);box-shadow:0 4px 12px #1b3a4b33}body{margin:0;padding:0}.nss-appointment-card{background:var(--ted-card);border-radius:var(--ted-radius);padding:1rem;margin-bottom:1rem;box-shadow:var(--ted-shadow);transition:all .2s;border-left:4px solid var(--ted-gold)}.nss-appointment-card:hover{box-shadow:var(--ted-shadow-hover);transform:translateY(-2px)}.nss-appointment-card.status-arrived{border-left-color:var(--ted-success)}.nss-appointment-card.status-no-show{border-left-color:var(--ted-error)}.nss-appointment-card.status-cancelled{border-left-color:var(--ted-muted);opacity:.7}.nss-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.nss-stat-card{background:linear-gradient(135deg,var(--ted-navy) 0%,#2a5468 100%);color:#fff;padding:1.5rem;border-radius:var(--ted-radius);box-shadow:var(--ted-shadow)}.nss-stat-card.warning{background:linear-gradient(135deg,var(--ted-gold) 0%,#B08D45 100%);color:var(--ted-text-on-gold)}.nss-stat-card.danger{background:linear-gradient(135deg,var(--ted-error) 0%,#dc2626 100%);color:#fff}.nss-stat-value{font-size:2rem;font-weight:700;margin-bottom:.25rem}.nss-stat-label{font-size:.875rem;opacity:.9}.nss-time-badge{display:inline-block;padding:.25rem .75rem;background:var(--ted-gold);color:var(--ted-text-on-gold);border-radius:999px;font-weight:600;font-size:.875rem}.nss-deposit-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--ted-surface);border:1px solid var(--ted-border);border-radius:var(--ted-radius);font-size:.875rem}.nss-deposit-badge.paid{background:#d1fae5;border-color:var(--ted-success);color:#065f46}.nss-deposit-badge.pending{background:#fef3c7;border-color:var(--ted-warning);color:#92400e}.nss-quick-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}.nss-quick-actions .ted-btn{padding:.5rem 1rem;font-size:.875rem}.nss-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 768px){.nss-form-row,.nss-stats-grid{grid-template-columns:1fr}}
