@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--bg: #f2f4f8;--surface: #ffffff;--border: #e5e7ee;--text: #14161f;--text-muted: #6b7080;--primary: #4f5fe0;--primary-hover: #4351c9;--primary-soft: #eef0fd;--danger: #d64545;--danger-soft: #fbebeb;--success: #2f9e5c;--success-soft: #e9f7ee;--radius: 12px;--radius-sm: 8px;--shadow: 0 1px 2px rgba(20, 22, 31, .04), 0 4px 16px rgba(20, 22, 31, .04);--shadow-hover: 0 2px 4px rgba(20, 22, 31, .06), 0 8px 24px rgba(20, 22, 31, .08)}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}.app{max-width:860px;margin:0 auto;padding:40px 20px 80px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}h1{font-size:1.6rem;font-weight:700;margin:0;letter-spacing:-.02em}button{cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-sm);padding:9px 16px;font-size:.88rem;font-weight:500;font-family:inherit;transition:background .15s ease,border-color .15s ease,transform .1s ease}button:hover:not(:disabled){background:#fafafd;border-color:#d3d6e0}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.55;cursor:not-allowed}header button{background:var(--primary);border-color:var(--primary);color:#fff;padding:10px 18px}header button:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.filter-bar{display:flex;align-items:center;gap:10px;margin-bottom:20px}.filter-bar label{font-size:.85rem;color:var(--text-muted);font-weight:500}.filter-bar .page-size-label{margin-left:auto}.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px}.pagination-info{font-size:.85rem;color:var(--text-muted)}.pagination-controls{display:flex;align-items:center;gap:6px}.pagination-controls button{padding:6px 12px}.pagination-page{font-size:.85rem;color:var(--text);font-weight:500;padding:0 6px}select,input,textarea{padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.88rem;font-family:inherit;background:var(--surface);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}select:focus,input:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.new-ticket-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:24px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow)}.field{display:flex;flex-direction:column;gap:5px}.field label{font-size:.8rem;color:var(--text-muted);font-weight:500}.ticket-list{display:flex;flex-direction:column;gap:14px}.ticket-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow);transition:box-shadow .15s ease,transform .1s ease}.ticket-card:hover{box-shadow:var(--shadow-hover)}.ticket-card.status-uj{background:var(--danger-soft);border-color:#f2caca}.ticket-card.status-lezarva{background:var(--success-soft);border-color:#c3e9d1}.ticket-header{display:flex;justify-content:space-between;align-items:center;gap:10px}.ticket-header strong{font-size:1rem;font-weight:600}.ticket-desc{margin:0;color:#3a3d4a;line-height:1.45}.ticket-meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px 20px;font-size:.82rem}.ticket-meta-item{display:flex;gap:6px}.ticket-meta-item .meta-label{color:var(--text-muted);white-space:nowrap}.ticket-meta-item .meta-value{color:#2c2e38;font-weight:500;overflow-wrap:anywhere}.ticket-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.badge{font-size:.72rem;font-weight:600;padding:5px 12px;border-radius:999px;background:#eef0f3;color:#444;white-space:nowrap;letter-spacing:.01em}.badge-uj{background:var(--danger-soft);color:var(--danger)}.badge-felveve{background:#fff4e0;color:#b3760a}.badge-arajanlat_adva{background:#e8effe;color:#35a}.badge-arajanlat_elutasitva{background:var(--danger-soft);color:var(--danger)}.badge-kivitelezes_alatt{background:#f0eaff;color:#6a3fd6}.badge-kivitelezes_kesz{background:var(--success-soft);color:var(--success)}.badge-kiszamlazva{background:#e0f4fb;color:#1b7fa3}.badge-lezarva{background:var(--success-soft);color:var(--success)}.ticket-footer{display:flex;justify-content:flex-end}.details-button{font-size:.8rem;color:var(--primary);border-color:#d6d9f7;background:var(--primary-soft)}.details-button:hover:not(:disabled){background:#e2e5fb}.ticket-detail{display:flex;flex-direction:column;gap:18px}.back-link{align-self:flex-start;background:none;border:none;padding:0;color:var(--primary);font-size:.88rem;font-weight:500}.back-link:hover{text-decoration:underline;background:none}.ticket-detail h2{margin:0;font-size:1.4rem;letter-spacing:-.01em}.ticket-detail h3{margin:4px 0 0;font-size:.78rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.status-flow{display:flex;align-items:center;flex-wrap:wrap;row-gap:14px;column-gap:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.flow-step{display:flex;align-items:center;gap:8px;flex:0 0 auto}.flow-dot{width:11px;height:11px;border-radius:999px;background:#d8dae3;flex-shrink:0;transition:background .2s ease}.flow-step.reached .flow-dot{background:var(--success)}.flow-step.current .flow-dot{background:var(--success);box-shadow:0 0 0 4px var(--success-soft)}.flow-step-branch .flow-dot{background:var(--danger);box-shadow:0 0 0 4px var(--danger-soft)}.flow-label{font-size:.78rem;color:var(--text-muted);white-space:nowrap;font-weight:500}.flow-step.reached .flow-label{color:var(--text);font-weight:600}.flow-line{width:20px;height:2px;background:#d8dae3;margin:0 6px;transition:background .2s ease}.flow-step.reached+.flow-step .flow-line,.flow-step.reached .flow-line{background:var(--success)}.flow-line-branch{background:var(--danger)}.status-log{display:flex;flex-direction:column;gap:10px}.log-entry{display:flex;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 16px;box-shadow:var(--shadow)}.log-entry-avatar{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--accent-soft, #e6e9f5);color:var(--accent, #4453b8);font-weight:700;font-size:.85rem;display:flex;align-items:center;justify-content:center}.log-entry-body{flex:1;min-width:0}.log-entry-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.log-entry-user{font-weight:600;font-size:.9rem}.log-at{font-size:.75rem;color:var(--text-muted);margin-top:6px}.log-entry-note{font-size:.85rem;color:var(--text);margin-top:4px}.error{background:var(--danger-soft);color:var(--danger);border:1px solid #f2caca;border-radius:var(--radius-sm);padding:10px 14px;font-size:.85rem;font-weight:500}.header-actions{display:flex;align-items:center;gap:10px}.current-user{font-size:.85rem;color:var(--text-muted);font-weight:500;margin-right:4px}.secondary-button{background:var(--surface);color:var(--text);border-color:var(--border)}.secondary-button:hover:not(:disabled){background:#fafafd;border-color:#d3d6e0}.danger-button{color:var(--danger);border-color:#f2caca;background:var(--danger-soft)}.danger-button:hover:not(:disabled){background:#f7dcdc}.auth-app{max-width:400px;padding-top:80px}.auth-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow)}.auth-form h2{margin:0 0 4px;font-size:1.2rem}.auth-hint{margin:0 0 4px;font-size:.82rem;color:var(--text-muted);line-height:1.4}.form-subtitle{margin:0;font-size:.95rem}.user-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.user-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow)}.user-username{color:var(--text-muted);font-size:.85rem;margin-left:8px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14161f73;display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}.modal{background:var(--surface);border-radius:var(--radius);padding:24px;max-width:420px;width:100%;box-shadow:var(--shadow-hover);display:flex;flex-direction:column;gap:14px}.modal h3{margin:0;font-size:1.05rem}.modal-ticket-summary{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;display:flex;flex-direction:column;gap:4px;font-size:.85rem}.modal-question{margin:0;font-weight:500}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.modal-actions button:first-child{background:var(--primary);border-color:var(--primary);color:#fff}.modal-actions button:first-child:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.modal-actions .secondary{background:var(--surface)}.auth-form-header,.users-page-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.auth-form-header h2{margin:0}.help-button{font-size:.82rem;padding:7px 12px;white-space:nowrap}.help-modal{max-width:620px;max-height:82vh;padding:0;overflow:hidden}.help-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--border)}.help-modal-header h3{margin:0;font-size:1.05rem}.help-close{border:none;background:none;font-size:1.4rem;line-height:1;padding:4px 8px;color:var(--text-muted)}.help-close:hover{background:#f2f2f5;color:var(--text)}.help-content{padding:20px 24px 26px;overflow-y:auto;max-height:calc(82vh - 60px)}.help-section{margin-bottom:24px}.help-section:last-child{margin-bottom:0}.help-section h4{margin:0 0 8px;font-size:.95rem;font-weight:700;color:var(--primary)}.help-section p{margin:0 0 8px;font-size:.88rem;line-height:1.5}.help-tip{background:var(--primary-soft);border-radius:var(--radius-sm);padding:10px 14px;font-size:.85rem!important}.help-fields{margin:10px 0;display:flex;flex-direction:column;gap:10px}.help-fields>div{border-top:1px solid var(--border);padding-top:10px}.help-fields>div:first-child{border-top:none;padding-top:0}.help-fields dt{font-weight:600;font-size:.86rem;margin-bottom:2px}.help-fields dd{margin:0;color:var(--text-muted);font-size:.85rem;line-height:1.45}.help-fields code{font-family:ui-monospace,Consolas,monospace;background:#eef0f3;padding:1px 5px;border-radius:4px;font-size:.82em}
