.inv-form{gap:18px;max-width:640px;margin-top:24px;display:grid}.inv-form label,.inv-field>span{margin-bottom:6px;font-weight:600;display:block}.inv-form input[type=text],.inv-form input[type=email],.inv-form input[type=date],.inv-form input[type=number],.inv-form select,.inv-form textarea{border:1px solid var(--input);width:100%;font:inherit;color:var(--foreground);background:#fff;border-radius:4px;padding:12px 14px;display:block}.inv-form textarea{resize:vertical;min-height:110px}.inv-form input:focus-visible,.inv-form select:focus-visible,.inv-form textarea:focus-visible,.inv-actions button:focus-visible,.inv-link:focus-visible{outline:3px solid var(--ring);outline-offset:2px}.inv-form .hint{color:var(--muted-foreground);margin-top:4px;font-size:.9rem}.inv-form .check{align-items:flex-start;gap:10px;font-weight:400;display:flex}.inv-form .check input{flex:none;width:18px;height:18px;margin-top:5px}.inv-form [aria-invalid=true]{border-color:var(--destructive)!important}.inv-error{color:var(--destructive);margin-top:4px;font-size:.92rem}.inv-alert{border-left:4px solid var(--destructive);background:#fdf1f2;margin:12px 0;padding:12px 16px}.inv-ok{border-left:4px solid var(--ring);background:var(--accent);margin:12px 0;padding:12px 16px}.inv-warning{background:#fff8e6;border-left:4px solid #b7791f;margin:16px 0;padding:14px 18px}.inv-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.inv-actions button,.inv-button{border:1px solid var(--primary);background:var(--primary);color:#fff;min-height:44px;font:inherit;cursor:pointer;border-radius:4px;padding:10px 18px;font-weight:600}.inv-actions button.secondary{color:var(--primary);background:#fff}.inv-actions button.danger{color:var(--destructive);border-color:var(--destructive);background:#fff}.inv-actions button:disabled{opacity:.55;cursor:not-allowed}.inv-table-wrap{-webkit-overflow-scrolling:touch;margin:14px 0 6px;overflow-x:auto}.inv-table{border-collapse:collapse;width:100%;font-size:.95rem}.inv-table.wide{min-width:520px}.inv-table tbody th{font-weight:400}.inv-table caption{text-align:left;padding:6px 0;font-weight:700}.inv-table th,.inv-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:8px 10px}.inv-table.numeric td:not(:first-child),.inv-table.numeric th:not(:first-child){text-align:right;white-space:nowrap}.inv-table tr.total th,.inv-table tr.total td{font-weight:700}.inv-note{color:var(--muted-foreground);margin:4px 0 18px;font-size:.9rem}.inv-facts{gap:10px;margin:14px 0;padding:0;list-style:none;display:grid}.inv-facts li{grid-template-columns:minmax(120px,auto) 1fr;align-items:start;gap:12px;display:grid}.inv-tag{letter-spacing:.04em;text-transform:uppercase;background:var(--secondary);color:var(--primary);white-space:nowrap;border-radius:3px;padding:3px 8px;font-size:.72rem;font-weight:700;display:inline-block}.inv-tag.Unresolved{color:#7a4b00;background:#fff1d6}.inv-tag.Estimate,.inv-tag.Assumption{color:#23408e;background:#eaf0ff}.inv-tag.Confirmed{color:#1d5c34;background:#e3f5ea}.inv-tag.Not{color:#6b2a6b;background:#f3e8f3}.inv-video{aspect-ratio:406/720;background:#000;border-radius:4px;width:100%;max-width:360px;display:block}.inv-banner{z-index:5;color:#fff;text-align:center;background:#7a4b00;padding:10px 16px;font-weight:600;position:sticky;top:0}.inv-grid{gap:18px;display:grid}.inv-card{border:1px solid var(--border);background:#fff;border-radius:6px;padding:18px}.inv-card h3{margin:0 0 6px;font-size:1.15rem}.inv-kv{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 18px;margin:12px 0;display:grid}.inv-kv dt{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.04em;font-size:.82rem}.inv-kv dd{overflow-wrap:anywhere;margin:2px 0 0}.inv-code{letter-spacing:.4em;text-align:center;max-width:240px;font-size:1.4rem}.inv-link{color:var(--primary);font-weight:600}@media (max-width:640px){.inv-facts li{grid-template-columns:1fr;gap:4px}.inv-actions button{width:100%}}.inv-form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23073849' stroke-width='2'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;min-height:48px;padding-right:40px}.inv-form input[type=text],.inv-form input[type=email],.inv-form input[type=date],.inv-form input[type=number]{min-height:48px}.inv-admin h2{margin-top:48px;margin-bottom:12px;font-size:clamp(1.7rem,4vw,2.4rem)}.inv-admin h3{margin-top:28px}
