:root{--color-bg:#f7f8fa;--color-surface:#fff;--color-border:#e2e5ea;--color-text:#1e2330;--color-text-muted:#6b7280;--color-accent:#4f46e5;--color-accent-hover:#4338ca;--color-danger:#dc2626;--color-success:#16a34a;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--radius:8px;--shadow:0 1px 3px #0000000f}[data-theme=dark]{--color-bg:#15171c;--color-surface:#1e2128;--color-border:#2c2f38;--color-text:#e8e9ec;--color-text-muted:#9098a8;--color-accent:#6366f1;--color-accent-hover:#818cf8;--color-danger:#f87171;--color-success:#4ade80;--shadow:0 1px 3px #0006}body{transition:background-color .2s,color .2s}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);margin:0;font-size:15px;line-height:1.5}h1{margin:0 0 16px;font-size:24px;font-weight:600}@media (width>=768px){h1{font-size:28px}}h2{margin:0 0 12px;font-size:20px;font-weight:600}a{color:var(--color-accent);text-decoration:none}button{cursor:pointer;font-family:inherit;font-size:14px}.page{max-width:1000px;margin:0 auto;padding:24px 16px}@media (width>=768px){.page{padding:32px 24px}}.list-header{flex-direction:column;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}@media (width>=768px){.list-header{flex-direction:row;align-items:center}}.btn-primary{background:var(--color-accent);color:#fff;border-radius:var(--radius);white-space:nowrap;border:none;width:100%;padding:12px 20px;font-size:14px;font-weight:500}@media (width>=768px){.btn-primary{width:auto}}.btn-primary:hover{background:var(--color-accent-hover)}.card-list{flex-direction:column;gap:12px;display:flex}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;justify-content:space-between;gap:12px;padding:16px 14px;display:flex}@media (width>=768px){.card{flex-direction:row;align-items:center;padding:16px 20px}}.card-title{margin:0 0 6px;font-size:15px;font-weight:600}.card-subtitle{color:var(--color-text-muted);margin:0 0 6px;font-size:13px}.card-description{color:var(--color-text-muted);margin:0;font-size:13px;font-style:italic}.card-actions{flex-shrink:0;gap:8px;width:100%;display:flex}@media (width>=768px){.card-actions{width:auto}}.btn-edit,.btn-delete{color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius);background:0 0;flex:1;padding:8px 12px;font-size:13px}@media (width>=768px){.btn-edit,.btn-delete{flex:0;padding:6px 14px}}.btn-edit:hover{border-color:var(--color-accent);color:var(--color-accent)}.btn-delete:hover{border-color:var(--color-danger);color:var(--color-danger)}.status-select{border:1px solid var(--color-accent);background:var(--color-surface);color:var(--color-text);border-radius:6px;padding:4px 8px;font-family:inherit;font-size:13px}.status-select:focus{outline:none}.dashboard-grid{grid-template-columns:1fr;align-items:start;gap:24px;display:grid}@media (width>=768px){.dashboard-grid{grid-template-columns:1fr 1fr}}.loading{color:var(--color-text-muted);justify-content:center;align-items:center;padding:60px 0;font-size:14px;display:flex}.details-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;padding:16px 14px}@media (width>=768px){.details-section{padding:20px 24px}}.details-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin:0 0 14px;font-size:11px;font-weight:700}.details-row{flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:12px;font-size:14px;display:flex}.details-label{color:var(--color-text-muted);flex-shrink:0;min-width:80px;font-size:12px;font-weight:600}@media (width>=768px){.details-row{flex-direction:row;align-items:baseline;gap:8px;margin-bottom:8px}.details-label{font-size:13px}}.details-value{color:var(--color-text);font-weight:500}.line-items{flex-direction:column;gap:8px;margin-bottom:14px;display:flex}.line-item{background:var(--color-bg);border-radius:6px;grid-template-columns:1fr 1fr;gap:8px;padding:12px;font-size:13px;display:grid}.line-item-name{grid-column:1/-1}.line-item-name:nth-of-type(2){color:var(--color-text-muted);grid-column:1/-1;font-size:12px}.line-item-meta{text-align:left}.line-item .details-value{text-align:right;font-weight:600}@media (width>=768px){.line-item{flex-direction:row;align-items:center;gap:16px;padding:10px 14px;font-size:14px;display:flex}.line-item-name{flex:1}.line-item-name:nth-of-type(2){flex:1;font-size:13px}.line-item-meta,.line-item .details-value{flex-shrink:0}}.line-item-name{flex:1;font-weight:500}.line-item-meta{color:var(--color-text-muted);font-size:13px}.details-total{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:8px;padding-top:12px;font-size:14px;font-weight:600;display:flex}@media (width>=768px){.details-total{font-size:15px}}.status-badge{border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.status-badge.open{background:color-mix(in srgb, var(--color-accent) 15%, transparent);color:var(--color-accent)}.status-badge.closed,.status-badge.draft{background:color-mix(in srgb, var(--color-text-muted) 15%, transparent);color:var(--color-text-muted)}.status-badge.sent{color:#f59e0b;background:#f59e0b26}.status-badge.paid{background:color-mix(in srgb, var(--color-success) 15%, transparent);color:var(--color-success)}.empty-state{text-align:center;color:var(--color-text-muted);padding:24px 0;font-size:14px}.details-table{border-collapse:collapse;width:100%;margin-bottom:14px;font-size:13px}.details-table-wrapper{margin-bottom:14px;overflow-x:auto}.details-table thead{display:none}.details-table tbody{flex-direction:column;gap:12px;display:flex}.details-table tr{background:var(--color-bg);border:none;border-radius:6px;grid-template-columns:1fr 1fr;gap:12px;padding:12px;display:grid}.details-table td{color:var(--color-text);border:none;flex-direction:column;gap:3px;padding:0;font-size:13px;display:flex}.details-table td:first-child{grid-column:1/-1}.details-table .col-price{text-align:left;color:var(--color-text-muted);font-size:12px;font-weight:400}.details-table .col-price:before{content:"Price × Qty: ";color:var(--color-text-muted);font-weight:600}.details-table .col-total{text-align:right;grid-column:auto;justify-content:flex-end;font-size:14px;font-weight:600}.details-table .col-total:before{content:"Total: ";color:var(--color-text-muted);font-size:12px;font-weight:600}@media (width>=768px){.details-table thead{display:table-header-group}.details-table tbody{gap:0;display:table-row-group}.details-table tr{background:0 0;border:none;border-radius:0;grid-template-columns:auto;gap:0;padding:0;display:table-row}.details-table th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:8px 12px;font-size:11px;font-weight:700}.details-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);flex-direction:row;gap:0;padding:10px 12px;font-size:14px;display:table-cell}.details-table td:first-child{grid-column:auto}.details-table .col-price{text-align:right;color:var(--color-text-muted);font-size:13px;display:table-cell}.details-table .col-price:before{content:""}.details-table .col-total{text-align:right;justify-content:auto;grid-column:auto;font-size:14px;font-weight:600;display:table-cell}.details-table .col-total:before{content:""}.details-table tr:last-child td{border-bottom:none}}.modal-overlay{z-index:100;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);width:90%;max-width:400px;padding:28px 32px;box-shadow:0 8px 32px #0000004d}.modal-title{color:var(--color-text);margin:0 0 8px;font-size:16px;font-weight:600}.modal-message{color:var(--color-text-muted);margin:0 0 24px;font-size:14px}.modal-actions{justify-content:flex-end;gap:10px;display:flex}.form-field{flex-direction:column;gap:6px;width:100%;margin-bottom:18px;display:flex}@media (width>=768px){.form-field{max-width:360px}}.form-field label{color:var(--color-text-muted);font-size:13px;font-weight:600}.form-field input,.form-field select{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);padding:10px 12px;font-family:inherit;font-size:14px}.form-field input:focus,.form-field select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent) 20%, transparent);outline:none}.form-field input.input-error{border-color:var(--color-danger)}.field-error{color:var(--color-danger);margin:4px 0 0;font-size:12px}.form-actions{margin-top:8px}.btn-secondary{color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius);background:0 0;padding:6px 12px;font-size:13px}.btn-secondary:hover{border-color:var(--color-danger);color:var(--color-danger)}.order-items-list{flex-direction:column;gap:8px;width:100%;margin:0 0 20px;padding:0;list-style:none;display:flex}.order-item-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;justify-content:space-between;align-items:flex-start;gap:8px;padding:12px;font-size:13px;display:flex}@media (width>=768px){.order-items-list{max-width:420px}.order-item-row{flex-direction:row;gap:0;padding:10px 14px;font-size:14px}}.add-item-row{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.add-item-row .form-field{width:100%;margin-bottom:0}.status-field{width:100%;margin-bottom:20px}@media (width>=768px){.add-item-row{flex-direction:row;align-items:flex-end}.add-item-row .form-field{width:auto;max-width:360px}.status-field{max-width:200px}}.navbar{background:var(--color-surface);border-bottom:1px solid var(--color-border);align-items:center;gap:12px;height:56px;padding:0 12px;display:flex}.navbar-brand{color:var(--color-text);flex:1;font-size:16px;font-weight:700}.navbar-menu-toggle{cursor:pointer;color:var(--color-text);background:0 0;border:none;flex-direction:column;gap:4px;margin:0;padding:6px;display:flex}.navbar-menu-toggle span{background-color:var(--color-text);border-radius:1px;width:20px;height:2.5px;transition:all .3s;display:block}.navbar-menu{background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:999;box-shadow:var(--shadow);flex-direction:column;gap:0;padding:8px 0;display:none;position:fixed;top:56px;left:0;right:0}.navbar-menu.open{display:flex}.navbar-link{color:var(--color-text-muted);border-bottom:1px solid var(--color-border);padding:12px 16px;font-size:14px;font-weight:500;transition:background-color .2s,color .2s;display:block}.navbar-link:last-child{border-bottom:none}.navbar-link:hover{color:var(--color-text);background-color:var(--color-bg)}@media (width>=768px){.navbar{gap:24px;padding:0 24px}.navbar-brand{margin-right:16px}.navbar-menu-toggle{display:none!important}.navbar-menu{box-shadow:none;background:0 0;border:none;flex-direction:row;gap:24px;padding:0;position:static;display:flex!important}.navbar-link{background-color:#0000;border-bottom:none;padding:6px 0;font-size:14px;display:inline}.navbar-link:hover{background-color:#0000}}.theme-switch{cursor:pointer;align-items:center;margin-left:auto;display:inline-flex;position:relative}.theme-switch input{opacity:0;cursor:pointer;width:44px;height:24px;margin:0;position:absolute}.theme-switch-track{background:var(--color-border);border-radius:999px;width:44px;height:24px;transition:background-color .2s;position:relative}.theme-switch input:checked+.theme-switch-track{background:var(--color-border)}.theme-switch-thumb{background:var(--color-surface);width:20px;height:20px;box-shadow:var(--shadow);border-radius:50%;transition:transform .2s;position:absolute;top:2px;left:2px}.theme-switch input:checked+.theme-switch-track .theme-switch-thumb{transform:translate(20px)}
