.hero{max-width:720px;margin:0 auto var(--space-8);text-align:center}.hero h1{font-size:clamp(1.6rem,1.2rem + 2vw,2.4rem);font-weight:800;letter-spacing:-.02em;line-height:1.25;margin-bottom:var(--space-3)}.hero h1 .serif{font-family:var(--font-serif);font-style:italic;font-weight:400;color:var(--color-primary)}.hero p{color:var(--color-text-muted);font-size:var(--fs-md)}.tool-card{max-width:1280px;margin:0 auto var(--space-8);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-8);box-shadow:0 1px 3px #0003}.field-label{display:block;font-size:var(--fs-sm);font-weight:600;color:var(--color-text);margin-bottom:var(--space-2)}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8)}.tool-form{display:flex;flex-direction:column;gap:var(--space-6)}.form-section{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-4)}.form-section h3{font-size:var(--fs-sm);font-weight:700;color:var(--color-primary);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2)}.form-section h3 .step-num{width:24px;height:24px;border-radius:999px;background:#ff5c001a;color:var(--color-primary);display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:800;flex-shrink:0}.field-row{display:grid;gap:var(--space-3)}.field-row.two{grid-template-columns:1fr 1fr}.field-row:not(:last-child){margin-bottom:var(--space-4)}.text-input{width:100%;font-family:inherit;font-size:var(--fs-base);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--radius) - 2px);padding:var(--space-3) var(--space-4);min-height:44px;transition:border-color .15s ease,box-shadow .15s ease}.text-input::-moz-placeholder{color:var(--color-text-muted);opacity:.65;font-size:.92em}.text-input::placeholder{color:var(--color-text-muted);opacity:.65;font-size:.92em}.text-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #ff5c0026}.items-list{display:flex;flex-direction:column;gap:var(--space-2)}.item-row{display:grid;grid-template-columns:1.6fr .6fr .9fr .7fr 40px;gap:var(--space-2);align-items:center}.item-row .text-input{min-height:42px;padding:var(--space-2) var(--space-3);font-size:var(--fs-sm)}.item-total{font-size:var(--fs-sm);font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-text);text-align:right;white-space:nowrap}.remove-btn{width:40px;height:40px;border:1px solid var(--color-border);border-radius:calc(var(--radius) - 2px);background:var(--color-bg);color:var(--color-text-muted);font-size:var(--fs-lg);line-height:1;cursor:pointer;transition:color .15s ease,border-color .15s ease}.remove-btn:hover{color:var(--color-danger);border-color:#ef444480}.add-btn{font-family:inherit;font-size:var(--fs-sm);font-weight:600;color:var(--color-primary);background:#ff5c001a;border:1px solid rgba(255,92,0,.2);border-radius:calc(var(--radius) - 2px);min-height:44px;padding:0 var(--space-4);cursor:pointer;align-self:flex-start;transition:background .15s ease}.add-btn:hover{background:#ff5c0026}.options-row{display:flex;gap:var(--space-6);align-items:flex-end;flex-wrap:wrap}.option-field{flex:1;min-width:150px}.option-field.small{flex:0 0 auto}.vat-check{display:flex;align-items:center;gap:var(--space-2);min-height:44px;font-size:var(--fs-base);font-weight:500;cursor:pointer;color:var(--color-text)}.vat-check input{width:20px;height:20px;accent-color:var(--color-primary);cursor:pointer}.actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.btn{font-family:inherit;font-size:var(--fs-base);font-weight:700;border-radius:999px;min-height:48px;padding:0 var(--space-6);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);transition:transform .15s ease,background .15s ease;text-decoration:none;border:none}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-light)}.btn-secondary{background:var(--color-surface);color:var(--color-text-muted);border:1px solid var(--color-border)}.btn-secondary:hover{color:var(--color-text);border-color:var(--color-text-muted)}.btn:hover{transform:translateY(-1px)}.preview-panel{display:flex;flex-direction:column;gap:var(--space-4)}.preview-header{display:flex;align-items:center;justify-content:space-between}.preview-header .field-label{margin-bottom:0}.bill-preview{--print-bg: #ffffff;--print-text: #18181b;--print-text-muted: #6b7280;--print-border: #e4e4e7;border:1px solid var(--print-border);border-radius:calc(var(--radius) - 2px);overflow:hidden;background:var(--print-bg);color:var(--print-text)}.bill-doc{padding:var(--space-6)}.bill-top{text-align:center;padding-bottom:var(--space-4);border-bottom:2px solid var(--print-text);margin-bottom:var(--space-4)}.bill-brand{font-size:var(--fs-lg);font-weight:800;color:var(--color-primary);line-height:1.3}.bill-title{font-size:var(--fs-base);font-weight:800;letter-spacing:.06em;margin-top:var(--space-1)}.bill-contact{font-size:var(--fs-2xs);color:var(--print-text-muted);margin-top:var(--space-1)}.bill-meta{display:flex;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4);font-size:var(--fs-2xs);color:var(--print-text-muted)}.bill-meta .mono{font-family:var(--font-mono);font-size:var(--fs-2xs)}.bill-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.bill-table thead th{text-align:left;font-size:var(--fs-2xs);color:var(--print-text-muted);text-transform:uppercase;letter-spacing:.04em;padding:var(--space-2);border-bottom:1px solid var(--print-border);white-space:nowrap}.bill-table thead th:nth-child(2),.bill-table thead th:nth-child(3),.bill-table thead th:nth-child(4),.bill-table td.num{text-align:right}.bill-table tbody td{padding:var(--space-3) var(--space-2);border-bottom:1px dashed var(--print-border);vertical-align:top}.bill-table tbody td .desc-line{font-weight:600}.bill-table tbody tr.empty td{color:var(--print-text-muted);text-align:center;padding:var(--space-8) var(--space-4);font-size:var(--fs-sm)}.bill-table .num{font-variant-numeric:tabular-nums;white-space:nowrap}.bill-totals{display:flex;flex-direction:column;align-items:flex-end;margin-top:var(--space-4);font-size:var(--fs-sm)}.bill-totals .line{display:flex;justify-content:space-between;gap:var(--space-8);min-width:220px;padding:var(--space-1) 0}.bill-totals .line span:first-child{color:var(--print-text-muted)}.bill-totals .line span:last-child{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.bill-totals .line.grand{font-size:var(--fs-lg);font-weight:800;color:var(--color-primary);border-top:2px solid var(--print-text);margin-top:var(--space-2);padding-top:var(--space-3)}.bill-payment{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px dashed var(--print-border);font-size:var(--fs-sm);display:flex;flex-direction:column;gap:var(--space-1)}.bill-payment .pay-line{display:flex;justify-content:space-between;gap:var(--space-4)}.bill-payment .pay-line span:first-child{color:var(--print-text-muted)}.bill-payment .pay-line span:last-child{font-weight:700;font-variant-numeric:tabular-nums}.bill-payment .pay-line .change{color:var(--color-success)}.bill-footer{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px dashed var(--print-border);font-size:var(--fs-xs);color:var(--print-text-muted);text-align:center}.preview-hint{font-size:var(--fs-xs);color:var(--color-text-muted);text-align:center}.features{max-width:980px;margin:0 auto var(--space-8);display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.feature{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-6)}.feature .icon{width:44px;height:44px;border-radius:10px;background:#ff5c001a;color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:var(--space-3)}.feature h3{font-size:var(--fs-md);font-weight:700;margin-bottom:var(--space-2)}.feature p{font-size:var(--fs-sm);color:var(--color-text-muted)}.faq{max-width:720px;margin:0 auto var(--space-8)}.faq h2{font-size:var(--fs-xl);font-weight:800;text-align:center;margin-bottom:var(--space-6)}.faq details{background:var(--color-surface);border:1px solid var(--color-border);border-radius:calc(var(--radius) - 2px);margin-bottom:var(--space-2);overflow:hidden}.faq summary{cursor:pointer;list-style:none;padding:var(--space-4) var(--space-6);font-weight:600;font-size:var(--fs-base);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);min-height:44px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-size:var(--fs-lg);color:var(--color-text-muted);flex-shrink:0}.faq details[open] summary:after{content:"−"}.faq .answer{padding:0 var(--space-6) var(--space-6);font-size:var(--fs-sm);color:var(--color-text-muted)}@media (max-width: 960px){.tool-grid{grid-template-columns:1fr}}@media (max-width: 768px){.features{grid-template-columns:1fr}.tool-card{padding-left:var(--space-4);padding-right:var(--space-4)}.field-row.two{grid-template-columns:1fr}.item-row{grid-template-columns:1fr .6fr .9fr 36px}.item-row .item-total{display:none}.bill-meta{flex-direction:column;gap:var(--space-2)}.actions .btn{flex:1}}@media print{body{background:#fff}header,footer,.bg-cta,.hero,.tool-form,.preview-header,.preview-hint,.features,.faq,.actions{display:none!important}main{padding:0}.tool-card{border:none;box-shadow:none;padding:0;max-width:100%}.tool-grid,.preview-panel{display:block}.bill-preview{border:none}.bill-doc{padding:0}}
