.ticket-page,.ticket-list,.ticket-card,.ticket-card-summary,.ticket-summary-left,.ticket-card-body,.ticket-message,.ticket-message-text,.ticket-answer-form{min-width:0;max-width:100%;box-sizing:border-box}
.ticket-list{display:flex;flex-direction:column;gap:14px}.customer-ticket-list{margin-top:20px}
.ticket-card{width:100%;overflow:hidden;border:1px solid #dfe7f2;border-radius:18px;background:#fff}
.ticket-card-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:20px 22px;cursor:pointer;list-style:none}
.ticket-card-summary::-webkit-details-marker{display:none}.ticket-card-summary:hover{background:#f8fbff}
.ticket-summary-left{flex:1 1 auto;overflow:hidden}.ticket-title-line{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.ticket-title-line strong{font-size:17px}
.ticket-meta-line{display:flex;flex-wrap:wrap;gap:7px 18px;margin-top:8px;color:#667085;font-size:13px}
.ticket-preview{width:100%;margin-top:10px;overflow:hidden;color:#475467;line-height:1.6;text-overflow:ellipsis;white-space:nowrap}
.ticket-toggle-label{flex:0 0 auto;color:#3775f5;font-size:13px;font-weight:800}.ticket-card[open] .ticket-toggle-label{font-size:0}.ticket-card[open] .ticket-toggle-label::after{content:"접기";font-size:13px}
.ticket-card-body{width:100%;overflow:hidden;padding:22px;border-top:1px solid #dfe7f2;background:#fbfdff}
.ticket-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.ticket-info-grid>div{min-width:0;padding:16px;border:1px solid #e3eaf4;border-radius:13px;background:#fff}.ticket-info-grid small{display:block;margin-bottom:7px;color:#667085;font-weight:700}
.ticket-message{width:100%;overflow:hidden;margin-top:16px;border:1px solid #dfe7f2;border-radius:15px;background:#fff}
.ticket-message header{display:flex;justify-content:space-between;gap:15px;padding:14px 17px;border-bottom:1px solid #dfe7f2;background:#f8fafc}.ticket-message header time{color:#667085;font-size:13px}
.ticket-message-text{display:block;width:100%;overflow:hidden;padding:20px;color:#344054;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-all}
.ticket-message.admin{border-color:#cfe0ff}.ticket-message.admin header{color:#1769d2;background:#edf4ff}
.ticket-paste-preview{display:flex;align-items:center;gap:10px;margin-top:8px;padding:8px 10px;border:1px solid #dfe7f2;border-radius:12px;background:#f8fafc;font-size:13px;color:#475467}
.ticket-paste-preview img{width:48px;height:48px;object-fit:cover;border-radius:8px;border:1px solid #e3eaf4}
.ticket-paste-preview span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ticket-paste-preview button{flex:none;height:30px;padding:0 10px;font-size:12px}
.ticket-status{display:inline-flex;align-items:center;justify-content:center;min-width:74px;padding:6px 11px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}
.ticket-status.warning{background:#fff3d5;color:#b77900}.ticket-status.info{background:#e9f3ff;color:#1769d2}.ticket-status.success{background:#e8f8ee;color:#198754}.ticket-status.gray{background:#eef1f5;color:#667085}
.ticket-answer-form{width:100%;margin-top:22px;padding:20px;border:1px solid #dce6f5;border-radius:15px;background:#fff}
.ticket-answer-form textarea,.ticket-create-form textarea{width:100%;max-width:100%;box-sizing:border-box;resize:vertical;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-all}
.ticket-answer-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-top:14px}.ticket-answer-actions label{width:230px;margin:0}
.ticket-no-answer{margin-top:16px;padding:20px;border:1px dashed #d7dfeb;border-radius:14px;color:#667085;text-align:center;background:#fff}
@media(max-width:900px){.ticket-info-grid{grid-template-columns:1fr 1fr}.ticket-answer-actions{align-items:stretch;flex-direction:column}.ticket-answer-actions label{width:100%}}
@media(max-width:560px){.ticket-info-grid{grid-template-columns:1fr}.ticket-card-summary{align-items:flex-start}.ticket-title-line{align-items:flex-start;flex-direction:column}.ticket-preview{white-space:normal;overflow-wrap:anywhere;word-break:break-all}.ticket-message header{flex-direction:column}}
