@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@400;600;700&family=Fira+Code:wght@400;500&display=swap);:root{--color-dark-cocoa:#42362e;--color-warm-taupe:#a8917f;--color-soft-greige:#d2ccc4;--color-off-white:#f7f9f6;--color-muted-blush:#b69788;--color-deep-charcoal:#121212;--color-primary:var(--color-dark-cocoa);--color-primary-hover:#352b24;--color-secondary:var(--color-warm-taupe);--color-secondary-hover:#9a8471;--color-accent:var(--color-muted-blush);--color-accent-hover:#a68678;--color-background:var(--color-off-white);--color-surface:#fff;--color-surface-alt:var(--color-soft-greige);--color-text-primary:var(--color-deep-charcoal);--color-text-secondary:var(--color-dark-cocoa);--color-text-tertiary:var(--color-warm-taupe);--color-text-on-dark:var(--color-off-white);--color-border:var(--color-soft-greige);--color-border-light:#e8e4df;--color-border-dark:var(--color-warm-taupe);--color-success:#4caf50;--color-success-light:#e8f5e9;--color-error:#d32f2f;--color-error-light:#ffebee;--color-warning:#f57c00;--color-warning-light:#fff3e0;--color-info:#1976d2;--color-info-light:#e3f2fd;--shadow-sm:0 1px 2px #42362e0d;--shadow-md:0 4px 6px #42362e12,0 2px 4px #42362e0f;--shadow-lg:0 10px 15px #42362e1a,0 4px 6px #42362e0d;--shadow-xl:0 20px 25px #42362e26,0 10px 10px #42362e0a;--font-primary:"Inter",system-ui,-apple-system,sans-serif;--font-heading:"Playfair Display",Georgia,serif;--font-mono:"Fira Code","Courier New",monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-full:9999px;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:200ms cubic-bezier(0.4,0,0.2,1);--transition-slow:300ms cubic-bezier(0.4,0,0.2,1);--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070}.bg-primary{background-color:#42362e;background-color:var(--color-primary)}.bg-secondary{background-color:#a8917f;background-color:var(--color-secondary)}.bg-accent{background-color:#b69788;background-color:var(--color-accent)}.bg-surface{background-color:#fff;background-color:var(--color-surface)}.bg-surface-alt{background-color:#d2ccc4;background-color:var(--color-surface-alt)}.bg-background{background-color:#f7f9f6;background-color:var(--color-background)}.text-primary{color:#121212;color:var(--color-text-primary)}.text-secondary{color:#42362e;color:var(--color-text-secondary)}.text-tertiary{color:#a8917f;color:var(--color-text-tertiary)}.text-on-dark{color:#f7f9f6;color:var(--color-text-on-dark)}.font-primary{font-family:Inter,system-ui,-apple-system,sans-serif;font-family:var(--font-primary)}.font-heading{font-family:Playfair Display,Georgia,serif;font-family:var(--font-heading)}.font-mono{font-family:Fira Code,Courier New,monospace;font-family:var(--font-mono)}.shadow-sm{box-shadow:0 1px 2px #42362e0d;box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:0 4px 6px #42362e12,0 2px 4px #42362e0f;box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:0 10px 15px #42362e1a,0 4px 6px #42362e0d;box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:0 20px 25px #42362e26,0 10px 10px #42362e0a;box-shadow:var(--shadow-xl)}.rounded-sm{border-radius:.25rem;border-radius:var(--radius-sm)}.rounded-md{border-radius:.5rem;border-radius:var(--radius-md)}.rounded-lg{border-radius:.75rem;border-radius:var(--radius-lg)}.rounded-xl{border-radius:1rem;border-radius:var(--radius-xl)}.rounded-full{border-radius:9999px;border-radius:var(--radius-full)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{background-color:var(--color-background);color:var(--color-text-primary);font-family:var(--font-primary);font-size:var(--font-size-base);line-height:var(--line-height-normal);margin:0}h1,h2,h3,h4,h5,h6{color:var(--color-text-secondary);font-family:var(--font-heading);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin-bottom:var(--spacing-md)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{margin-bottom:var(--spacing-md)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--color-primary-hover)}code,pre{font-family:var(--font-mono);font-size:var(--font-size-sm)}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:var(--color-soft-greige)}::-webkit-scrollbar-thumb{background:var(--color-warm-taupe);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-dark-cocoa)}::selection{background-color:var(--color-muted-blush);color:var(--color-off-white)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.pwa-install-prompt{animation:slideUp .3s ease-out;bottom:var(--spacing-lg);left:50%;max-width:500px;position:fixed;transform:translateX(-50%);width:calc(100% - 2rem);z-index:var(--z-modal)}@keyframes slideUp{0%{opacity:0;transform:translateX(-50%) translateY(100px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.pwa-install-content{align-items:center;background:var(--color-surface);border:2px solid var(--color-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);display:flex;gap:var(--spacing-md);padding:var(--spacing-lg)}.pwa-install-icon{border-radius:var(--radius-md);flex-shrink:0;height:48px;width:48px}.pwa-install-text{flex:1 1}.pwa-install-text h3{color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--font-size-lg);margin:0 0 var(--spacing-xs) 0}.pwa-install-text p{color:var(--color-text-tertiary);font-size:var(--font-size-sm);margin:0}.pwa-install-actions{display:flex;flex-direction:column;flex-shrink:0;gap:var(--spacing-sm)}.btn-sm{font-size:var(--font-size-sm);padding:.5rem 1rem;white-space:nowrap}@media (max-width:768px){.pwa-install-prompt{bottom:var(--spacing-md);width:calc(100% - 1rem)}.pwa-install-content{flex-direction:column;text-align:center}.pwa-install-actions{flex-direction:row;width:100%}.pwa-install-actions button{flex:1 1}}.pwa-update-notification{animation:slideInRight .3s ease-out;max-width:400px;position:fixed;right:var(--spacing-lg);top:var(--spacing-lg);z-index:var(--z-modal)}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.pwa-update-content{align-items:center;background:var(--color-surface);border-left:4px solid var(--color-info);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);display:flex;gap:var(--spacing-md);padding:var(--spacing-lg)}.pwa-update-icon{animation:rotate 2s linear infinite;flex-shrink:0;font-size:2rem}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.pwa-update-text{flex:1 1}.pwa-update-text h3{color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--font-size-lg);margin:0 0 var(--spacing-xs) 0}.pwa-update-text p{color:var(--color-text-tertiary);font-size:var(--font-size-sm);margin:0}.pwa-update-actions{display:flex;flex-direction:column;flex-shrink:0;gap:var(--spacing-sm)}@media (max-width:768px){.pwa-update-notification{left:var(--spacing-md);max-width:none;right:var(--spacing-md);top:var(--spacing-md)}.pwa-update-content{flex-direction:column;text-align:center}.pwa-update-actions{flex-direction:row;width:100%}.pwa-update-actions button{flex:1 1}}.offline-indicator{animation:slideDown .3s ease-out;left:50%;position:fixed;top:var(--spacing-lg);transform:translateX(-50%);z-index:var(--z-tooltip)}@keyframes slideDown{0%{opacity:0;transform:translateX(-50%) translateY(-100%)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.offline-content{align-items:center;background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);display:flex;gap:var(--spacing-sm);min-width:200px;padding:var(--spacing-md) var(--spacing-lg)}.offline-indicator.offline .offline-content{background:var(--color-error);color:var(--color-text-on-dark)}.offline-indicator.online .offline-content{background:var(--color-success);color:var(--color-text-on-dark)}.status-icon{align-items:center;display:flex;font-size:var(--font-size-xl);justify-content:center}.status-text{font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}@media (max-width:768px){.offline-indicator{left:var(--spacing-md);right:var(--spacing-md);top:var(--spacing-md);transform:none}.offline-content{justify-content:center;width:100%}}.app-loading{align-items:center;background-color:var(--color-background);display:flex;flex-direction:column;height:100vh;justify-content:center}.loader{animation:spin 1s linear infinite;border-top:4px solid var(--color-border);border:4px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);height:50px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.container{margin:0 auto;max-width:1200px;padding:var(--spacing-lg)}.card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-xl)}.btn{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-family:var(--font-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);gap:var(--spacing-sm);justify-content:center;padding:.75rem 1.5rem;text-decoration:none;transition:all var(--transition-base)}.btn-primary{background-color:var(--color-primary);color:var(--color-text-on-dark)}.btn-primary:hover{background-color:var(--color-primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background-color:var(--color-secondary);color:var(--color-text-on-dark)}.btn-secondary:hover{background-color:var(--color-secondary-hover);transform:translateY(-1px)}.btn-accent{background-color:var(--color-accent);color:var(--color-text-on-dark)}.btn-accent:hover{background-color:var(--color-accent-hover);transform:translateY(-1px)}.btn-danger{background-color:var(--color-error);color:var(--color-text-on-dark)}.btn-danger:hover{opacity:.9;transform:translateY(-1px)}.btn-outline{background-color:initial;border:2px solid var(--color-primary);color:var(--color-primary)}.btn-outline:hover{background-color:var(--color-primary);color:var(--color-text-on-dark)}.btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn:active{transform:translateY(0)}.form-group{margin-bottom:var(--spacing-lg)}.form-label{color:var(--color-text-secondary);display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-sm)}.form-input,.form-select,.form-textarea{background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-primary);font-size:var(--font-size-base);padding:.75rem 1rem;transition:all var(--transition-base);width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #42362e1a;outline:none}.form-textarea{min-height:120px;resize:vertical}.error-message{background-color:var(--color-error-light);color:var(--color-error)}.error-message,.success-message{border-radius:var(--radius-sm);display:block;font-size:var(--font-size-sm);margin-top:var(--spacing-xs);padding:var(--spacing-sm)}.success-message{background-color:var(--color-success-light);color:var(--color-success)}.app-layout{display:flex;min-height:100vh}.main-content{background-color:var(--color-background);flex:1 1;margin-left:260px;min-height:100vh}@media (max-width:768px){.main-content{margin-left:0}.container{padding:var(--spacing-md)}.card{padding:var(--spacing-lg)}.btn{font-size:var(--font-size-sm);padding:.625rem 1.25rem}}.table{background:var(--color-surface);border-collapse:collapse;border-radius:var(--radius-lg);overflow:hidden;width:100%}.table td,.table th{border-bottom:1px solid var(--color-border);padding:var(--spacing-md);text-align:left}.table th{background-color:var(--color-surface-alt);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:.05em;text-transform:uppercase}.table tr:last-child td{border-bottom:none}.table tr:hover{background-color:var(--color-soft-greige)}.badge{border-radius:var(--radius-full);display:inline-block;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:.05em;padding:.25rem .75rem;text-transform:uppercase}.badge-draft{background-color:var(--color-soft-greige);color:var(--color-dark-cocoa)}.badge-pending{background-color:var(--color-warning-light);color:var(--color-warning)}.badge-approved{background-color:var(--color-success-light);color:var(--color-success)}.badge-rejected{background-color:var(--color-error-light);color:var(--color-error)}
/*# sourceMappingURL=main.669e2eca.css.map*/