.ticket-modal-overlay{z-index:100;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.ticket-modal-card{border-radius:var(--radius-card);width:100%;max-width:448px;box-shadow:var(--shadow-lg);background:#fff;padding:24px}.ticket-modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.ticket-modal-title{font-size:16px;font-weight:700}.ticket-modal-close{color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;font-size:14px;transition:color .15s;display:inline-flex}.ticket-modal-close:hover{color:var(--ink)}.ticket-modal-intro{color:var(--muted-foreground);margin-bottom:16px;font-size:14px}.ticket-modal-form{flex-direction:column;gap:16px;display:flex}.ticket-modal-field-label{margin-bottom:4px;font-size:14px;font-weight:500;display:block}.ticket-modal-input{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);outline:0;width:100%;min-height:44px;padding:8px 12px;font-size:14px}.ticket-modal-input:focus-visible{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-tint);outline:none}.ticket-modal-textarea{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);resize:none;outline:0;width:100%;padding:8px 12px;font-size:14px}.ticket-modal-textarea:focus-visible{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-tint);outline:none}.ticket-modal-counter{text-align:right;color:var(--muted-foreground);margin-top:4px;font-size:14px}.ticket-modal-actions{gap:8px;display:flex}.ticket-modal-btn{border-radius:var(--radius-card);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-size:14px;font-weight:500;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.ticket-modal-btn.cancel{background:var(--card);border:1px solid var(--line);color:var(--ink)}.ticket-modal-btn.cancel:hover{border-color:color-mix(in srgb, var(--ink) 30%, transparent)}.ticket-modal-btn.submit{background:var(--brand);border:1px solid var(--brand);color:#fff;font-weight:600}.ticket-modal-btn.submit:hover{background:var(--brand-hover);border-color:var(--brand-hover)}.ticket-modal-btn:disabled{opacity:.5;cursor:not-allowed}