/* SpamGoblin Support Desk */
.sgsd-wrap { max-width: 980px; margin: 0 auto; }
.sgsd-form, .sgsd-lookup form, .sgsd-reply-form form { margin-top: 1.25rem; }
.sgsd-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 22px; }
.sgsd-grid p { margin: 0; }
.sgsd-span-2 { grid-column: 1 / -1; }
.sgsd-wrap label, .sgsd-admin label { display: block; font-weight: 800; color: #303b31; }
.sgsd-wrap label > span, .sgsd-admin label > span { color: #718073; font-size: .83rem; font-weight: 600; }
.sgsd-wrap input[type="text"], .sgsd-wrap input[type="email"], .sgsd-wrap select, .sgsd-wrap textarea,
.sgsd-admin input[type="text"], .sgsd-admin input[type="email"], .sgsd-admin select, .sgsd-admin textarea {
    width: 100%; margin-top: 6px; padding: 12px 13px; border: 1px solid #c9d2c8; border-radius: 10px; background: #fff; color: #182019; font: inherit;
}
.sgsd-wrap input[type="file"], .sgsd-admin input[type="file"] { display: block; margin-top: 8px; font-weight: 500; }
.sgsd-hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
.sgsd-notice { margin: 0 0 22px; padding: 16px 18px; border-left: 5px solid #8bc34a; border-radius: 0 10px 10px 0; background: #eff8e4; }
.sgsd-error { border-color: #b83f3f; background: #fff1f1; }
.sgsd-ticket-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; margin-bottom: 26px; }
.sgsd-ticket-head h2 { margin: 5px 0 5px !important; }
.sgsd-ticket-head p { margin: 0; color: #687369; }
.sgsd-ticket-key { color: #5f8f2e; font-size: .8rem; font-weight: 900; letter-spacing: .08em; }
.sgsd-status { display: inline-flex; flex: 0 0 auto; padding: 7px 11px; border-radius: 999px; background: #eef2ee; color: #3e4a40; font-size: .76rem; font-weight: 900; text-transform: uppercase; letter-spacing: .05em; }
.sgsd-status-open, .sgsd-status-in_progress { background: #e8f5da; color: #365c1d; }
.sgsd-status-pending_customer { background: #fff5d8; color: #765c10; }
.sgsd-status-resolved, .sgsd-status-closed { background: #e8ece9; color: #59625b; }
.sgsd-thread { display: grid; gap: 16px; margin: 26px 0; }
.sgsd-reply { padding: 22px 24px; border: 1px solid #dce4db; border-radius: 14px; background: #fff; box-shadow: 0 8px 24px rgba(20,34,23,.055); }
.sgsd-reply-staff { border-left: 5px solid #8bc34a; background: #f8fbf4; }
.sgsd-reply-customer { border-left: 5px solid #2e3d31; }
.sgsd-reply header { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 12px; }
.sgsd-reply time { color: #718073; font-size: .82rem; }
.sgsd-reply p:last-child { margin-bottom: 0; }
.sgsd-attachments { margin-top: 14px; padding-top: 12px; border-top: 1px solid #e6ece5; }
.sgsd-attachments a { display: inline-block; font-size: .88rem; font-weight: 750; }
.sgsd-reply-form { margin-top: 28px; }
.sgsd-lookup { margin-bottom: 22px; }
.sgsd-admin-meta { margin: 10px 0 22px; padding: 14px 16px; border: 1px solid #dcdcde; background: #fff; }
.sgsd-admin-thread { max-width: 1000px; }
.sgsd-admin-reply { max-width: 1000px; margin-top: 24px; }
.sgsd-admin-reply select { max-width: 320px; }
.sgsd-admin-filters { margin-bottom: 16px; }
@media (max-width: 700px) {
    .sgsd-grid { grid-template-columns: 1fr; }
    .sgsd-span-2 { grid-column: auto; }
    .sgsd-ticket-head { display: block; }
    .sgsd-status { margin-top: 10px; }
    .sgsd-reply header { display: block; }
    .sgsd-reply time { display: block; margin-top: 4px; }
}
