:root{--bg-gradient: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);--card-bg: #ffffff;--text-primary: #2c3e50;--text-secondary: #5a6a7a;--border-color: #d1d9e6;--shadow-color: rgba(0, 0, 0, .08);--primary-color: #007bff;--primary-hover: #0056b3;--success-color: #28a745;--success-hover: #218838;--secondary-bg: #e9ecef;--secondary-hover: #d3d9df;--table-header-bg: #f8f9fa;--table-row-hover: #f1f1f1;--danger-color: #6c757d;--danger-hover: #5a6268}@media (prefers-color-scheme: dark){:root{--bg-gradient: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);--card-bg: #1e293b;--text-primary: #e2e8f0;--text-secondary: #94a3b8;--border-color: #334155;--shadow-color: rgba(0, 0, 0, .2);--primary-color: #388bfd;--primary-hover: #549dff;--success-color: #2da44e;--success-hover: #38bf5a;--secondary-bg: #30363d;--secondary-hover: #404750;--table-header-bg: #2a3444;--table-row-hover: #2c384e;--danger-color: #485158;--danger-hover: #5a6268}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-image:var(--bg-gradient);background-attachment:fixed;color:var(--text-primary);margin:0}#root{width:100%;display:flex;flex-direction:column;align-items:center}.App{width:100%;max-width:1200px;margin:40px 0;padding:20px;box-sizing:border-box}h1,h2,h3{color:var(--text-primary);margin-top:0}.separator{border:none;border-top:1px solid var(--border-color);margin:40px 0}.form-container,.invoice-list,.series-manager{background:var(--card-bg);padding:30px;border-radius:12px;box-shadow:0 6px 20px var(--shadow-color);margin-bottom:40px;border:1px solid var(--border-color)}form{display:flex;flex-direction:column;gap:20px}.invoice-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}input,textarea,select{width:100%;padding:12px;border:1px solid var(--border-color);border-radius:6px;box-sizing:border-box;font-size:1rem;font-family:inherit;background-color:var(--card-bg);color:var(--text-primary)}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--card-bg) inset!important;-webkit-text-fill-color:var(--text-primary)!important}textarea{resize:vertical;min-height:80px}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-color)}.party-details{display:grid;grid-template-columns:1fr 1fr;gap:20px}fieldset{border:1px solid var(--border-color);border-radius:8px;padding:20px;display:flex;flex-direction:column;gap:15px}legend{padding:0 10px;font-weight:700;color:var(--primary-color)}table{width:100%;border-collapse:collapse;margin-top:10px}thead{background-color:var(--table-header-bg)}th,td{padding:15px;text-align:left;border-bottom:1px solid var(--border-color);vertical-align:middle}th{font-weight:600}tbody tr:hover{background-color:var(--table-row-hover)}button{padding:12px 20px;border-radius:6px;border:none;cursor:pointer;font-weight:700;font-size:1rem;transition:background-color .2s}button.submit-button{background-color:var(--success-color);color:#fff;align-self:flex-end}button.submit-button:hover{background-color:var(--success-hover)}button[type=button]{background-color:var(--secondary-bg);color:var(--text-primary);align-self:flex-start}button[type=button]:hover{background-color:var(--secondary-hover)}.pdf-button{background-color:var(--primary-color);color:#fff;padding:8px 12px}.pdf-button:hover{background-color:var(--primary-hover)}.logout-button{background-color:var(--danger-color);color:#fff}.logout-button:hover{background-color:var(--danger-hover)}.actions-cell button{margin-right:8px}.actions-cell button:last-child{margin-right:0}.notification{position:fixed;top:20px;right:20px;padding:15px 25px;border-radius:8px;color:#fff;font-weight:700;z-index:1000;box-shadow:0 4px 12px #00000026;animation:slideIn .5s forwards;transform:translate(100%);opacity:0}@keyframes slideIn{to{transform:translate(0);opacity:1}}.notification.success{background-color:var(--success-color)}.notification.error{background-color:#dc3545}.taxes-and-totals{display:flex;justify-content:space-between;align-items:flex-start;margin-top:20px}.irpf-section{display:flex;align-items:center;gap:10px}.irpf-section label{font-weight:700;color:var(--text-secondary)}.irpf-section input{width:80px}.totals-summary{width:300px;display:flex;flex-direction:column;gap:10px}.totals-summary div{display:flex;justify-content:space-between;padding:5px 0}.totals-summary .grand-total{font-weight:700;font-size:1.2rem;color:var(--text-primary);border-top:2px solid var(--text-primary);margin-top:10px;padding-top:10px}.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;width:100%}.auth-form{background:var(--card-bg);padding:40px;border-radius:12px;box-shadow:0 6px 20px var(--shadow-color);border:1px solid var(--border-color);width:100%;max-width:400px;text-align:center}.auth-form h2{margin-bottom:25px}.auth-form form{display:flex;flex-direction:column;gap:15px}.auth-form p{margin-top:20px;color:var(--text-secondary)}.auth-form a{color:var(--primary-color);text-decoration:none;font-weight:700}.auth-form a:hover{text-decoration:underline}.error-message{color:#dc3545;background-color:#dc35451a;padding:10px;border-radius:6px;font-size:.9rem}.success-message{color:var(--success-color);background-color:#28a7451a;padding:10px;border-radius:6px;font-size:.9rem}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.series-content{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:20px;align-items:start}.series-list ul{list-style-type:none;padding:0;margin:0}.series-list li{background-color:var(--secondary-bg);padding:10px 15px;border-radius:6px;margin-bottom:10px;font-weight:500;color:var(--text-primary)}.series-form{display:flex;flex-direction:column;gap:10px}.series-form button{align-self:flex-start}.series-form label{font-size:.9em;font-weight:700;color:var(--text-secondary);text-align:left}@media (max-width: 768px){body,.App{padding:10px}.form-container,.invoice-list,.series-manager{padding:15px}.party-details,.taxes-and-totals,.series-content{grid-template-columns:1fr;flex-direction:column}.totals-summary{width:100%;margin-top:20px}th,td{padding:10px}}.invoice-list table,.invoice-list thead,.invoice-list tbody,.invoice-list th,.invoice-list td,.invoice-list tr{display:block}.invoice-list thead tr{position:absolute;top:-9999px;left:-9999px}.invoice-list tr{border:1px solid var(--border-color);border-radius:8px;margin-bottom:15px}.invoice-list td{border:none;border-bottom:1px solid var(--border-color);position:relative;padding-left:50%;text-align:right}.invoice-list td:before{position:absolute;top:50%;left:15px;width:45%;padding-right:10px;white-space:nowrap;content:attr(data-label);font-weight:700;text-align:left;transform:translateY(-50%)}.invoice-list td:last-child{border-bottom:0}.actions-cell{padding-left:15px!important;text-align:center!important}.actions-cell:before{content:""!important}.comments-section{display:flex;flex-direction:column;gap:5px}.invoice-accordion{display:flex;flex-direction:column;gap:15px}.invoice-item{background-color:var(--secondary-bg);border-radius:8px;border:1px solid var(--border-color);transition:all .3s ease}.invoice-item.expanded{background-color:var(--card-bg);box-shadow:0 4px 12px var(--shadow-color)}.invoice-summary{padding:15px 20px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.summary-main{display:flex;flex-direction:column;gap:2px;flex-grow:1}.summary-number{font-weight:700;font-size:1.1em;color:var(--text-primary)}.summary-receiver{font-size:.9em;color:var(--text-secondary)}.summary-details{display:flex;align-items:center;gap:15px}.summary-date{font-size:.9em}.summary-total{font-weight:700;font-size:1.1em}.accordion-arrow{font-size:1.2em;color:var(--text-secondary);margin-left:10px}.invoice-details-expanded{padding:20px;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:15px}.detail-row{display:flex;justify-content:space-between;font-size:.9em}.actions-cell{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding-top:10px}.summary-rectifies{font-size:.8em;font-style:italic;color:var(--primary-color);margin-top:4px;background-color:#007bff1a;padding:2px 6px;border-radius:4px}.header{display:flex;align-items:center;justify-content:space-between}.profile-link{margin-right:20px;font-weight:700;color:var(--primary-color);text-decoration:none}.profile-form{background:var(--card-bg);padding:40px;border-radius:12px;box-shadow:0 6px 20px var(--shadow-color);border:1px solid var(--border-color);width:100%;max-width:600px}.profile-section{display:flex;flex-direction:column;gap:15px}.profile-section h3{border-bottom:1px solid var(--border-color);padding-bottom:10px;margin-bottom:10px}.logo-preview{text-align:center;margin-bottom:20px}.logo-preview img{max-width:150px;max-height:100px;border:1px solid var(--border-color);border-radius:8px;padding:5px}.profile-form label{font-weight:700;font-size:.9em;color:var(--text-secondary)}.profile-display-section h3{margin-bottom:20px;border-bottom:1px solid var(--border-color);padding-bottom:10px}.current-data-grid{display:grid;grid-template-columns:150px 1fr;gap:30px;align-items:center}.current-logo h4,.current-billing h4{margin-top:0;font-size:1em;color:var(--text-secondary)}.current-logo img{width:100%;height:auto;border-radius:8px;border:1px solid var(--border-color)}.current-billing p{margin:5px 0}.no-logo-text{font-style:italic;color:var(--text-secondary);font-size:.9em}.send-button{background-color:#ffc107;color:#000;margin-left:5px}.send-button:hover{background-color:#e0a800}.status-badge{padding:4px 8px;border-radius:12px;font-size:.8em;font-weight:700;color:#fff}.status-draft{background-color:#6c757d}.status-accepted{background-color:#28a745}.status-rejected{background-color:#dc3545}.edit-button{background-color:var(--secondary-bg);color:var(--text-primary)}.edit-button:hover{background-color:var(--secondary-hover)}.actions-cell{white-space:nowrap}.cancel-button{background-color:var(--danger-color);color:#fff;align-self:flex-start;margin-bottom:15px}.cancel-button:hover{background-color:var(--danger-hover)}
