*{box-sizing:border-box}body{margin:0;background:#f5f6f8;color:#202124;font:14px/1.45 Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}.hidden{display:none!important}.topbar{height:64px;background:#191919;color:#fff;padding:0 25px;display:flex;align-items:center;justify-content:space-between}.brand{color:#fff;text-decoration:none;font-size:17px;letter-spacing:.06em;font-weight:800}.brand b{color:#c39a5a}.top-actions{display:flex;align-items:center;gap:12px}.muted{color:#777;font-size:12px}.auth-screen{min-height:calc(100vh - 64px);display:grid;place-items:center;padding:22px}.auth-card{background:#fff;border:1px solid #e5e5e5;border-radius:16px;padding:30px;width:min(100%,420px);box-shadow:0 12px 35px #00000008}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.22em;color:#a47b3d}.auth-card h1{font-size:27px;margin:12px 0 4px}.tabs{display:flex;gap:8px;margin:22px 0 15px}.tab{flex:1;padding:10px;border:1px solid #ddd;border-radius:8px;background:white}.tab.active{background:#191919;color:white}.auth-card form{display:grid;gap:12px}.auth-card label,.form-grid label{display:grid;gap:6px;font-size:11px;font-weight:700;color:#666}.input{width:100%;border:1px solid #dedfe3;background:white;border-radius:8px;padding:10px 11px;outline:none;font-size:13px;color:#222}.input:focus{border-color:#b38a4a;box-shadow:0 0 0 3px #b38a4a18}.btn{border:1px solid #dedede;background:#fff;color:#252525;padding:9px 13px;border-radius:8px;font-size:12px;font-weight:700}.btn:hover{background:#f8f8f8}.btn.primary{background:#191919;border-color:#191919;color:white}.btn.light{background:#fff;color:#191919}.btn.small{padding:6px 9px;font-size:11px}.btn.danger{color:#a43d35;border-color:#ecd7d5}.btn.full{width:100%;padding:11px}.message{font-size:12px;color:#a43d35;margin-top:10px}.workspace{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px;max-width:1600px;margin:auto;padding:22px}.sidebar{background:#fff;border:1px solid #e7e8ea;border-radius:13px;padding:15px;height:fit-content;position:sticky;top:15px}.side-label{font-size:9px;letter-spacing:.17em;color:#999;font-weight:800;margin:5px 9px 12px}.nav{display:block;width:100%;text-align:left;padding:10px 11px;border:0;background:transparent;border-radius:8px;color:#60636a;font-size:13px;margin:2px 0}.nav.active{background:#f4eee4;color:#765322;font-weight:800}.side-ad{margin-top:20px}.main{min-width:0}.page-head{display:flex;justify-content:space-between;align-items:end;gap:15px;margin:0 0 18px}.page-head h1{font-size:25px;margin:0 0 4px}.page-head p{margin:0}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:17px}.stat,.panel{background:#fff;border:1px solid #e7e8ea;border-radius:12px;padding:16px}.stat small{display:block;color:#777;font-size:11px}.stat strong{display:block;font-size:23px;margin-top:8px;overflow-wrap:anywhere}.panel h2{font-size:14px;margin:0 0 13px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.panel-head h2{margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.span2{grid-column:1/-1}.asset-preview{display:block;max-width:170px;max-height:75px;object-fit:contain;margin-top:8px;border:1px solid #eee;padding:5px;border-radius:6px}.editor-grid{display:grid;grid-template-columns:minmax(360px,.92fr) minmax(400px,1.08fr);gap:16px;align-items:start}.editor-controls{display:grid;gap:12px}.top-gap{margin-top:12px}.button-row{display:flex;flex-wrap:wrap;gap:8px}.custom-row{display:grid;grid-template-columns:1fr 1fr 34px;gap:7px;margin:8px 0}.custom-row .field-type{font-size:11px;color:#888;align-self:center}.service-row{display:grid;grid-template-columns:minmax(100px,1fr) 62px 95px 34px;gap:7px;margin:8px 0}.preview-column{position:sticky;top:12px;min-width:0}.preview-label{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em;font-weight:800;margin-bottom:9px}.preview-label span{color:#999;font-weight:500;letter-spacing:0}.invoice-paper{background:white;color:#202124;border:1px solid #e5e5e5;box-shadow:0 8px 30px #0000000a;padding:32px;min-height:700px}.invoice-paper.classic{font-family:Georgia,serif}.invoice-paper.elegant{border:2px solid #b38a4a}.invoice-paper.minimal{box-shadow:none;border:0}.invoice-paper.compact{padding:22px;font-size:12px}.inv-header{display:flex;justify-content:space-between;gap:15px;border-bottom:2px solid #191919;padding-bottom:19px}.inv-business{display:flex;align-items:center;gap:12px;min-width:0}.inv-business img{width:58px;height:58px;object-fit:contain}.inv-business strong{display:block;font-size:19px;overflow-wrap:anywhere}.inv-business small{display:block;font-size:9px;color:#777;margin-top:3px;white-space:pre-line}.inv-title{text-align:right;flex:none}.inv-title h2{font-size:25px;letter-spacing:.1em;margin:0 0 4px}.inv-title small{font-size:10px;color:#777}.inv-title span{display:block;margin-top:7px;font-size:9px;font-weight:800;background:#eee;padding:5px 8px}.inv-client{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:22px 0}.inv-client label,.inv-bottom label{display:block;color:#a47b3d;font-size:9px;letter-spacing:.15em;font-weight:800;margin-bottom:6px}.inv-client b{display:block;font-size:12px}.inv-client small{display:block;color:#777;font-size:9px;margin-top:4px;white-space:pre-line}.dates{text-align:right}.preview-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:18px}.preview-section{grid-column:1/-1;color:#a47b3d;font-size:9px;font-weight:800;letter-spacing:.13em;padding-top:7px}.preview-field{border:1px solid #eee;padding:8px}.preview-field small{display:block;font-size:8px;color:#888}.preview-field b{font-size:10px;overflow-wrap:anywhere}.inv-table{width:100%;border-collapse:collapse;font-size:9px}.inv-table th{background:#191919;color:#fff;text-align:left;padding:9px 7px}.inv-table th:not(:first-child),.inv-table td.num{text-align:right}.inv-table td{padding:9px 7px;border-bottom:1px solid #eee}.inv-totals{width:220px;max-width:100%;margin:15px 0 0 auto;font-size:10px}.inv-totals div{display:flex;justify-content:space-between;gap:10px;padding:5px 0}.inv-totals .grand{border-top:1px solid #222;padding-top:9px;font-size:13px;font-weight:800}.inv-totals .paid{color:#187544}.inv-totals .balance{border-top:1px solid #ddd;padding-top:9px;font-weight:800}.inv-payment{margin-top:20px;font-size:9px;color:#777}.inv-payment b,.inv-payment small{display:block;margin:3px 0}.inv-bottom{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:34px}.inv-bottom small{display:block;white-space:pre-line;color:#777;font-size:9px}.signature{text-align:center}.signature img{max-width:130px;max-height:52px;object-fit:contain;margin:auto auto 5px}.signature div{border-top:1px solid #aaa;padding-top:6px;font-size:9px;color:#777}.invoice-paper footer{text-align:center;border-top:1px solid #eee;margin-top:28px;padding-top:10px;color:#aaa;font-size:8px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th,td{text-align:left;padding:10px 8px;border-bottom:1px solid #eee;white-space:nowrap}th{font-size:10px;color:#888}.status{font-size:9px;padding:4px 7px;border-radius:4px;background:#eee}.status.paid{background:#e3f4e9;color:#187544}.status.partial{background:#fff0d5;color:#8c611e}.recent-row{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;padding:10px 0;border-bottom:1px solid #eee;font-size:12px}.template-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.template-cards .panel p{font-size:11px;color:#777}.ad-slot{margin-top:15px}.ad-card{display:flex;gap:10px;align-items:center;background:#fff;border:1px dashed #ddd;border-radius:9px;padding:10px;text-decoration:none;color:#333;font-size:12px}.ad-card small{font-size:8px;color:#999}.ad-card img{max-width:95px;max-height:55px;object-fit:contain}.side-ad .ad-card{display:block}.side-ad .ad-card img{width:100%;max-height:85px;margin:7px 0}.toast{position:fixed;bottom:18px;right:18px;background:#191919;color:#fff;border-radius:8px;padding:12px 16px;font-size:12px;z-index:99;box-shadow:0 5px 20px #0002}
@media(max-width:1100px){.editor-grid{grid-template-columns:1fr}.preview-column{position:static}.invoice-paper{max-width:800px;margin:auto}.workspace{grid-template-columns:180px 1fr;padding:14px;gap:14px}}
@media(max-width:760px){.workspace{display:block;padding:10px}.sidebar{position:static;display:flex;overflow:auto;gap:4px;margin-bottom:14px;padding:7px}.side-label,.side-ad{display:none}.nav{white-space:nowrap;width:auto;flex:none;font-size:11px;padding:9px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat strong{font-size:19px}.page-head h1{font-size:22px}.template-cards{grid-template-columns:1fr 1fr}.invoice-paper{padding:20px 14px;min-height:0}.inv-business strong{font-size:15px}.inv-title h2{font-size:20px}.inv-business img{width:42px;height:42px}}
@media(max-width:480px){.form-grid{grid-template-columns:1fr}.span2{grid-column:auto}.custom-row{grid-template-columns:1fr 1fr 30px}.custom-row .field-type{display:none}.service-row{grid-template-columns:minmax(80px,1fr) 48px 75px 30px;gap:4px}.service-row .input{padding:8px 5px;font-size:11px}.template-cards{grid-template-columns:1fr}.recent-row{grid-template-columns:1fr auto}.recent-row span{display:none}.inv-business strong{font-size:13px}.inv-title h2{font-size:17px}.inv-client{gap:8px}.inv-bottom{gap:10px}}
@media print{@page{size:A4;margin:12mm}body *{visibility:hidden!important}#invoicePreview,#invoicePreview *{visibility:visible!important}#invoicePreview{position:absolute;left:0;top:0;width:100%;border:0!important;box-shadow:none!important;padding:0!important;min-height:0!important}.topbar,.sidebar,.page-head,.editor-controls,.preview-label,.ad-slot{display:none!important}}
