*{box-sizing:border-box}body{margin:0;font-family:"Yu Gothic UI",Meiryo,sans-serif;color:#243443;background:#f5f7f9}header{padding:20px 5%;display:flex;justify-content:space-between;align-items:center;background:white;border-bottom:1px solid #dbe3e9}header>.brand{font:bold 32px Georgia;text-decoration:none;color:#173e55}nav{display:flex;gap:16px}a{color:#173e55}main{max-width:1180px;margin:40px auto;padding:0 24px 60px}.eyebrow{font-size:12px;letter-spacing:3px;color:#617e90}h1{font-size:28px}h2{font-size:18px}p{line-height:1.8}button,input,select{font:inherit}button{border:1px solid #bdccd7;border-radius:6px;background:white;padding:10px 14px;color:#173e55;cursor:pointer}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible{outline:3px solid #438baf;outline-offset:3px}input,select{padding:10px;border:1px solid #bdccd7;border-radius:6px;background:white}#search{background:white;padding:20px;border-radius:10px}.search-row{display:flex;gap:10px;margin-top:10px}.search-row input{flex:1;min-width:0}.columns{display:grid;grid-template-columns:1fr 1.3fr;gap:24px;margin-top:24px}.columns>section,#conversation{background:white;border:1px solid #dce4e9;border-radius:10px;padding:20px;min-width:0}.record{display:block;width:100%;text-align:left;margin-top:10px;overflow-wrap:anywhere}.record strong,.record small{display:block}.record small{margin-top:5px;color:#657987}.record.active{border-color:#173e55;background:#edf3f7}.pager{display:flex;justify-content:space-between;margin-top:16px}#conversation{margin-top:24px}.message{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9;padding:18px;border-bottom:1px solid #e2e8ed}.message.user{background:#edf3f7}.message b{display:block;font-size:13px;margin-bottom:8px}#status{color:#8d6332}[hidden]{display:none!important}@media(max-width:720px){.columns{grid-template-columns:1fr}main{margin-top:24px;padding:0 14px 40px}header{padding:14px}nav{gap:10px;font-size:12px}.message{padding:12px}}

.member-portrait{width:104px;height:104px;object-fit:contain;background:#edf3f6;border:1px solid #d4dfe7;border-radius:12px}#member-photo-status{font-size:14px;color:#657987}

.sort-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px}#ticket-sort-help{font-size:14px;color:#657987;margin-bottom:0}

.message-date{display:block;color:#657987;font-size:13px;margin:0 0 10px}header nav{flex-wrap:wrap}

#dm-panel{margin-top:28px;padding:20px;border:1px solid #adc2d1;border-radius:12px;background:#edf4f7}#dm-editor label{display:block;margin:12px 0}#dm-preview{display:block;width:100%;margin:16px 0}#dm-panel [hidden]{display:none}#dm-status{white-space:pre-wrap}#dm-sent p{border-top:1px solid #ccdbe3;padding:12px 0}#dm-sent button{margin-left:12px}

.inbox-banner,.read-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:16px;background:#eef4fa;border:1px solid #c9dbe7;border-radius:10px;margin:18px 0}.unread-badge{display:inline-block;background:#a63827;color:#fff;border-radius:20px;padding:3px 10px;font-size:13px;margin:5px 0}.inbox-help{font-size:14px;color:#536b7a}.unread-filter{display:flex;align-items:center;gap:10px;margin:16px 0}.unread-filter input{width:20px;height:20px;accent-color:#173e55}.read-actions button{min-height:44px}

.member-ticket-balance{display:block;margin-top:8px;color:#173e55;font-size:14px}.member-ticket-balance b{font-size:22px;font-weight:800;font-variant-numeric:tabular-nums}

/* Keep every management link out of the logo typography. */
.admin-header{gap:20px;flex-wrap:wrap}.admin-header>.brand{display:inline-flex;align-items:center;flex:0 0 auto;white-space:nowrap}header.admin-header>nav.admin-menu{display:flex;flex:1 1 660px;min-width:0;flex-wrap:wrap;justify-content:flex-end;gap:8px}header.admin-header>nav.admin-menu a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 12px;border:1px solid #d6e1e8;border-radius:8px;background:#f7fafb;font:500 0.875rem/1.5 "Yu Gothic UI",Meiryo,sans-serif;text-decoration:none;white-space:normal;overflow-wrap:anywhere}header.admin-header>nav.admin-menu a:hover{background:#edf3f7;border-color:#9eb5c4}
@media(max-width:720px){.admin-header{padding:14px;gap:12px}header.admin-header>nav.admin-menu{flex-basis:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}header.admin-header>nav.admin-menu a{white-space:normal;text-align:center;padding:10px 8px}.admin-header>.brand{font-size:32px}.admin-header .sd-hat-mark{width:40px;height:34px}}

.admin-fold{background:#fff;border:1px solid #d2dfe7;border-radius:10px;padding:12px 16px;margin:14px 0}.admin-fold>summary{cursor:pointer;font-weight:700;color:#173e55;min-height:28px;line-height:1.7}.admin-fold[open]>summary{margin-bottom:12px}.admin-card{background:#fff;border:1px solid #dce4e9;border-radius:10px;padding:18px;margin:18px 0;scroll-margin-top:12px}.primary-action{background:#173e55;color:#fff;font-weight:700;margin:0 0 14px;min-height:44px}#member-picker #members{max-height:440px;overflow:auto}#conversation,#dm-panel{scroll-margin-top:12px}#messages{margin-top:16px}@media(max-width:720px){main{margin-top:16px}.admin-fold{padding:10px 12px}#conversation{padding:14px}#dm-panel{padding:12px}#member-picker #members{max-height:50vh}#pass-admin .pass-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.primary-action{width:100%}}
