@charset "UTF-8";:root{--color-primary: #DC2626;--color-primary-dark: #B91C1C;--color-primary-light: #FEF2F2;--color-secondary: #F87171;--color-cta: #CA8A04;--color-cta-dark: #A16207;--color-bg: #FFFBF7;--color-surface: #FFFFFF;--color-text: #1C0A00;--color-text-muted: #6B4C3B;--color-border: #F0D9CC;--color-success: #16A34A;--color-error: #DC2626;--color-info: #2563EB;--color-warning: #D97706;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--shadow-sm: 0 1px 3px rgba(28, 10, 0, .08);--shadow-md: 0 4px 12px rgba(28, 10, 0, .1);--shadow-lg: 0 8px 32px rgba(28, 10, 0, .12);--transition: .15s ease;--font-heading: "Playfair Display SC", serif;--font-body: "Karla", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}h1,h2,h3{font-family:var(--font-heading);line-height:1.2;color:var(--color-text)}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1.25rem;border-radius:var(--radius-md);font-family:var(--font-body);font-size:.95rem;font-weight:600;cursor:pointer;border:none;transition:background var(--transition),box-shadow var(--transition),opacity var(--transition);min-height:44px;white-space:nowrap;text-decoration:none}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:0 2px 8px #dc262659}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1.5px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-primary-light);border-color:var(--color-secondary)}.btn-danger{background:transparent;color:var(--color-primary);border:1.5px solid var(--color-primary)}.btn-danger:hover:not(:disabled){background:var(--color-primary-light)}.btn-ghost{background:transparent;color:var(--color-text-muted);border:1.5px solid transparent}.btn-ghost:hover:not(:disabled){background:var(--color-primary-light);color:var(--color-text)}.card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow:hidden}.badge{display:inline-block;padding:.2rem .65rem;border-radius:20px;font-size:.75rem;font-weight:600}.badge-active{background:#dcfce7;color:#15803d}.badge-inactive{background:#f3f4f6;color:#6b7280}.badge-soldout{background:#fef2f2;color:var(--color-primary)}.field{display:flex;flex-direction:column;gap:.3rem;margin-bottom:1rem}.field label{font-weight:600;font-size:.9rem;color:var(--color-text)}.field .req{color:var(--color-primary)}.field input,.field textarea,.field select{width:100%;padding:.7rem .9rem;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-body);font-size:1rem;color:var(--color-text);background:var(--color-surface);transition:border-color var(--transition),box-shadow var(--transition)}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #dc26261a}.field.has-error input,.field.has-error textarea,.field.has-error select{border-color:var(--color-error);background:#fff8f8}.field .hint{font-size:.8rem;color:var(--color-text-muted)}.field .error-msg{font-size:.8rem;color:var(--color-error);display:flex;align-items:center;gap:.25rem}.alert{padding:.75rem 1rem;border-radius:var(--radius-md);font-size:.9rem;display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.alert-error{background:#fef2f2;color:#9b1c1c;border:1px solid #FECACA}.alert-success{background:#f0fdf4;color:#15803d;border:1px solid #BBF7D0}.navbar{background:var(--color-surface);padding:.875rem 1.5rem;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-sm);border-bottom:1px solid var(--color-border)}.nav-logo{font-family:var(--font-heading);font-size:1.4rem;color:var(--color-primary);text-decoration:none;letter-spacing:.02em}@keyframes toast-in{0%{transform:translate(110%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toast-out{0%{transform:translate(0);opacity:1}to{transform:translate(110%);opacity:0}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{background:linear-gradient(90deg,#f0e8e0 25%,#e8dcd4,#f0e8e0 75%);background-size:800px 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:24px;height:24px;border:2.5px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.empty-state{text-align:center;padding:3rem 2rem;color:var(--color-text-muted)}.empty-state svg{opacity:.4;margin-bottom:1rem}.empty-state h3{font-size:1.1rem;margin-bottom:.5rem;color:var(--color-text)}.empty-state p{font-size:.9rem;margin-bottom:1.5rem}.modal-overlay{position:fixed;inset:0;background:#1c0a0080;display:flex;justify-content:center;align-items:flex-end;z-index:200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@media (min-width: 640px){.modal-overlay{align-items:center}}.modal{background:var(--color-surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:1.75rem;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}@media (min-width: 640px){.modal{border-radius:var(--radius-lg)}}.modal h2{font-size:1.25rem;margin-bottom:1.5rem}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.page{min-height:100vh;background:var(--color-bg)}.page-content{padding:1.75rem 1.5rem;max-width:1200px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.page-header h1{font-size:1.6rem}
