@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Inter:wght@300;400;500;600;700;800&family=Outfit:wght@300;400;500;600;700;800&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=Space+Grotesk:wght@400;500;600;700&display=swap");:root{--font-apple:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",var(--font-jakarta);--font-inter:"Inter",-apple-system,sans-serif;--font-outfit:"Outfit",sans-serif;--font-playfair:"Playfair Display",Georgia,serif;--font-jakarta:"Plus Jakarta Sans",sans-serif;--font-space:"Space Grotesk",monospace,sans-serif;--bg-app:#fbfbfd;--bg-canvas:#f5f5f7;--bg-surface:#ffffff;--bg-surface-elevated:#ffffff;--bg-surface-subtle:#f5f5f7;--bg-surface-hover:#f0f0f2;--border-subtle:rgba(0,0,0,0.07);--border-medium:rgba(0,0,0,0.12);--border-strong:rgba(0,0,0,0.2);--text-primary:#1d1d1f;--text-secondary:#6e6e73;--text-muted:#86868b;--text-tertiary:#a1a1a6;--text-inverse:#ffffff;--accent-apple-blue:#0071e3;--accent-apple-blue-hover:#0077ed;--accent-apple-blue-subtle:rgba(0,113,227,0.08);--accent-brand:#0071e3;--accent-brand-light:#479fff;--accent-brand-glow:rgba(0,113,227,0.15);--status-draft:#86868b;--status-sent:#0071e3;--status-accepted:#34c759;--status-unpaid:#ff9500;--status-partial:#ff9500;--status-paid:#34c759;--status-overdue:#ff3b30;--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:24px;--radius-pill:9999px;--shadow-sm:0 1px 3px rgba(0,0,0,0.04),0 1px 2px rgba(0,0,0,0.02);--shadow-md:0 4px 14px rgba(0,0,0,0.04),0 2px 4px rgba(0,0,0,0.02);--shadow-lg:0 12px 32px rgba(0,0,0,0.06),0 4px 12px rgba(0,0,0,0.03);--shadow-modal:0 24px 60px rgba(0,0,0,0.12),0 8px 24px rgba(0,0,0,0.06);--shadow-paper:0 16px 40px rgba(0,0,0,0.07),0 2px 6px rgba(0,0,0,0.04)}*{box-sizing:border-box;margin:0;padding:0}body,html{background-color:var(--bg-app);color:var(--text-primary);font-family:var(--font-apple);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.25)}.app-container{display:flex;min-height:100vh;background-color:var(--bg-app)}.main-content{flex:1 1;display:flex;flex-direction:column;min-width:0;overflow-x:hidden;padding-bottom:5rem}@media (min-width:768px){.main-content{margin-left:260px;padding-bottom:3rem}}.glass-panel{border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.glass-card,.glass-panel{background:#ffffff;box-shadow:var(--shadow-sm)}.glass-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:all .2s cubic-bezier(.16,1,.3,1)}.glass-card:hover{border-color:var(--border-medium);box-shadow:var(--shadow-md);transform:translateY(-1px)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:var(--radius-pill);font-size:.73rem;font-weight:600;letter-spacing:.01em;text-transform:capitalize}.badge-draft{background:#f2f2f7;color:#6e6e73;border:1px solid rgba(0,0,0,.06)}.badge-sent{background:#e8f3ff;color:#0071e3;border:1px solid rgba(0,113,227,.2)}.badge-viewed{background:#f3e8ff;color:#7e22ce;border:1px solid rgba(147,51,234,.2)}.badge-accepted{background:#eafaf1;color:#15803d;border:1px solid rgba(52,199,89,.25)}.badge-unpaid{background:#fff8eb;color:#b45309;border:1px solid rgba(245,158,11,.25)}.badge-partially_paid{background:#fff4ed;color:#c2410c;border:1px solid rgba(234,88,12,.25)}.badge-paid{background:#eafaf1;color:#15803d;border:1px solid rgba(52,199,89,.25)}.badge-overdue{border:1px solid rgba(239,68,68,.25)}.badge-overdue,.badge-rejected{background:#fef2f2;color:#b91c1c}.badge-rejected{border:1px solid rgba(239,68,68,.2)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#1d1d1f;color:#ffffff;font-weight:600;font-size:.875rem;padding:9px 18px;border-radius:var(--radius-pill);border:1px solid transparent;cursor:pointer;transition:all .18s ease;box-shadow:0 1px 3px rgba(0,0,0,.1)}.btn-primary:hover{background:#000000;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#ffffff;color:var(--text-primary);font-weight:500;font-size:.875rem;padding:8px 16px;border-radius:var(--radius-pill);border:1px solid var(--border-medium);cursor:pointer;transition:all .18s ease;box-shadow:0 1px 2px rgba(0,0,0,.04)}.btn-secondary:hover{background:#f5f5f7;border-color:var(--border-strong);color:#000000}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:transparent;color:var(--text-secondary);font-weight:500;font-size:.875rem;padding:7px 12px;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:all .15s ease}.btn-ghost:hover{background:rgba(0,0,0,.05);color:var(--text-primary)}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:.78rem;font-weight:600;color:var(--text-secondary);letter-spacing:-.01em}.form-input,.form-select,.form-textarea{background:#ffffff;border:1px solid var(--border-medium);border-radius:var(--radius-sm);color:var(--text-primary);padding:9px 13px;font-size:.875rem;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--accent-apple-blue);box-shadow:0 0 0 3px rgba(0,113,227,.15)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-tertiary)}.a4-document-wrapper{background:#f0f0f4;padding:2.5rem 1.5rem;border-radius:var(--radius-xl);overflow-x:auto;display:flex;justify-content:center;border:1px solid var(--border-subtle)}.a4-sheet{width:210mm;min-height:297mm;background:#ffffff;color:#1d1d1f;box-shadow:var(--shadow-paper);padding:12mm 15mm;box-sizing:border-box;position:relative;display:flex;flex-direction:column;font-size:13px;line-height:1.5;border-radius:4px}@page{size:A4 portrait;margin:0}@media print{body,html{width:210mm!important;height:297mm!important;background:#ffffff!important;color:#000000!important;margin:0!important;padding:0!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.action-bar,.designer-sidebar,.mobile-nav,.no-print,.quick-create-btn,.sidebar,.top-header,button{display:none!important}.a4-document-wrapper,.main-content{margin:0!important;padding:0!important}.a4-document-wrapper{background:transparent!important;border:none!important}.a4-sheet{width:210mm!important;max-width:210mm!important;height:297mm!important;max-height:297mm!important;min-height:297mm!important;box-shadow:none!important;padding:10mm 14mm!important;margin:0 auto!important;page-break-after:avoid!important;page-break-inside:avoid!important;break-after:avoid!important;break-inside:avoid!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;border-radius:0!important;box-sizing:border-box!important;overflow:hidden!important}}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalZoomIn{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes pulseShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-shimmer{background:linear-gradient(90deg,#f0f0f4 25%,#e8e8ed 50%,#f0f0f4 75%);background-size:200% 100%;animation:pulseShimmer 1.6s ease-in-out infinite;border-radius:6px}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive::-webkit-scrollbar{height:6px}.table-responsive::-webkit-scrollbar-thumb{background:rgba(0,0,0,.12);border-radius:99px}.interactive-row{transition:background-color .14s ease}.interactive-row:hover{background-color:rgba(0,0,0,.02)}.focus-ring:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(0,113,227,.25)}