*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f5f5;color:#333;line-height:1.5}.layout{min-height:100vh}.header{background:#1a1a2e;color:#fff;padding:12px 24px;display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.4rem;font-weight:700;color:#f0a500;text-decoration:none}.header-right{display:flex;align-items:center;gap:12px}.user-badge{font-size:.85rem;opacity:.9}.main{max-width:1000px;margin:0 auto;padding:24px}.btn{padding:6px 14px;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer;font-size:.85rem;text-decoration:none;color:#333;display:inline-block}.btn:hover{background:#f0f0f0}.btn-primary{background:#f0a500;color:#fff;border-color:#f0a500}.btn-primary:hover{background:#d49200}.btn-danger{background:#e74c3c;color:#fff;border-color:#e74c3c}.btn-danger:hover{background:#c0392b}.btn-sm{padding:3px 8px;font-size:.8rem}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#1a1a2e}.login-card{background:#fff;padding:40px;border-radius:8px;text-align:center;min-width:320px}.login-card h1{color:#f0a500;font-size:2rem;margin-bottom:4px}.subtitle{color:#888;margin-bottom:24px}.login-card form{display:flex;flex-direction:column;gap:12px}.login-card label{text-align:left;font-weight:500}.login-card select{padding:8px;border:1px solid #ddd;border-radius:4px;font-size:.95rem}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h2{font-size:1.4rem}.header-actions{display:flex;gap:8px;align-items:center}.header-actions select{padding:4px 8px;border:1px solid #ccc;border-radius:4px}.data-table{width:100%;border-collapse:collapse;background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 1px 3px #00000014}.data-table th{text-align:left;padding:10px 12px;background:#f8f8f8;font-size:.8rem;text-transform:uppercase;color:#666;border-bottom:2px solid #eee}.data-table td{padding:10px 12px;border-bottom:1px solid #f0f0f0;font-size:.9rem}.clickable-row{cursor:pointer}.clickable-row:hover{background:#fafafa}.empty{text-align:center;color:#aaa;padding:24px!important}.status-badge{padding:2px 8px;border-radius:10px;font-size:.78rem;font-weight:500}.status-draft{background:#eee;color:#666}.status-active{background:#d4edda;color:#155724}.status-complete{background:#cce5ff;color:#004085}.type-badge{padding:1px 6px;border-radius:3px;font-size:.75rem;font-weight:500}.type-part{background:#e3f2fd;color:#1565c0}.type-adder{background:#fff3e0;color:#e65100}.create-form,.edit-form,.add-item-form{display:flex;gap:8px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.edit-form{flex-direction:column;align-items:stretch;background:#fff;padding:16px;border-radius:6px}.edit-form label{font-weight:500;font-size:.85rem;margin-top:8px}.edit-form input,.edit-form textarea{padding:8px;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.create-form input,.add-item-form input,.add-item-form select{padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:.85rem}.description{color:#555;margin-bottom:4px}.meta{color:#888;font-size:.85rem;margin-bottom:16px}.tabs{display:flex;gap:0;border-bottom:2px solid #eee;margin-bottom:20px}.tab{padding:8px 20px;border:none;background:none;cursor:pointer;font-size:.9rem;color:#888;border-bottom:2px solid transparent;margin-bottom:-2px}.tab:hover{color:#333}.tab-active{color:#f0a500;border-bottom-color:#f0a500;font-weight:500}.tab-content{min-height:200px}.quote-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:8px}.quote-selector{display:flex;gap:6px;flex-wrap:wrap}.markup-section{display:flex;align-items:center;gap:8px;font-size:.9rem}.price{text-align:right;font-variant-numeric:tabular-nums}.total-label{text-align:right;font-weight:600}.total{font-weight:600;font-size:1rem}.export-section{margin-top:16px}.upload-section{display:flex;gap:8px;align-items:center;margin-bottom:16px}.notes-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.note{background:#fff;padding:12px 16px;border-radius:6px;box-shadow:0 1px 2px #0000000f}.note-header{display:flex;justify-content:space-between;margin-bottom:4px}.note-time{color:#888;font-size:.8rem}.note p{font-size:.9rem}.note-form{display:flex;flex-direction:column;gap:8px}.note-form textarea{padding:10px;border:1px solid #ddd;border-radius:4px;font-size:.9rem;resize:vertical}.loading{text-align:center;padding:40px;color:#888}
