:root{font-family:"Yu Gothic UI","Meiryo",sans-serif;color:#172033;background:#eef2f7}*{box-sizing:border-box}body{margin:0}.hide{display:none!important}.topbar{height:68px;background:#183b66;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:10px 22px}.topbar h1{font-size:21px;margin:0}.topbar span{font-size:12px;opacity:.85}.top-actions{display:flex;align-items:center;gap:18px}.top-actions a{color:#fff}.app{height:calc(100vh - 68px);display:grid;grid-template-columns:330px minmax(0,1fr)}.talk-list{background:#fff;border-right:1px solid #ccd4df;padding:16px;overflow:auto}.aside-head,.conversation-head,.composer-actions,.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.aside-head h2,.conversation-head h2{margin:0}.talk-list input{width:100%;margin:12px 0;padding:10px;border:1px solid #b8c2d0;border-radius:6px}.talk-item{width:100%;text-align:left;background:#fff;border:0;border-bottom:1px solid #e1e6ed;padding:13px 8px;cursor:pointer}.talk-item.active{background:#e6f0ff;border-left:4px solid #2467b2}.talk-item-title{display:flex;justify-content:space-between;font-weight:700}.talk-item p{margin:5px 0 0;color:#647083;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{background:#d9343b;color:#fff;border-radius:12px;padding:1px 7px;font-size:12px}.conversation{min-width:0}.conversation-panel{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto}.conversation-head{padding:16px 22px;background:#fff;border-bottom:1px solid #d5dce5}.muted{color:#657187;font-size:13px}.messages{padding:18px 24px;overflow:auto}.message{max-width:760px;margin:0 0 14px;background:#fff;border-radius:10px;padding:12px 14px;box-shadow:0 1px 3px #0001}.message.mine{margin-left:auto;background:#dfeeff}.message-meta{display:flex;gap:12px;color:#677387;font-size:12px;margin-bottom:6px}.message-body{white-space:pre-wrap;word-break:break-word}.message-state{font-size:12px;color:#5d6878;text-align:right;margin-top:7px}.confirm-button{font-size:12px;padding:4px 8px;margin-left:8px}.composer{background:#fff;border-top:1px solid #d5dce5;padding:14px 20px}.composer textarea{width:100%;resize:vertical;padding:10px;border:1px solid #aeb8c7;border-radius:6px}.composer-actions{margin-top:8px;justify-content:flex-end}button,.top-actions a,.center-card a{border:1px solid #8b99aa;border-radius:5px;padding:8px 12px;background:#fff;color:#1f334d;text-decoration:none;cursor:pointer}.primary{background:#2467b2;color:#fff;border-color:#2467b2}.empty-state,.center-card{margin:50px auto;max-width:650px;text-align:center;color:#667286}.center-card{background:#fff;padding:30px;border-radius:10px}dialog{border:0;border-radius:10px;box-shadow:0 12px 45px #0005;width:min(560px,92vw)}dialog::backdrop{background:#17203388}dialog label{display:block;margin:12px 0}dialog input,dialog select,dialog textarea{display:block;width:100%;padding:9px;margin-top:5px;border:1px solid #aeb8c7;border-radius:5px}.user-picker{max-height:260px;overflow:auto;display:grid;grid-template-columns:1fr 1fr;gap:7px}.user-picker label{margin:0}.user-picker input{display:inline;width:auto;margin-right:6px}.error{color:#b4232a;margin:8px 0}.dialog-actions{justify-content:flex-end;margin-top:16px}@media(max-width:760px){.app{grid-template-columns:1fr}.talk-list{height:36vh;border-right:0;border-bottom:1px solid #ccd4df}.conversation{height:calc(64vh - 68px)}.topbar{padding:8px 12px}.topbar>div:first-child span{display:none}.user-picker{grid-template-columns:1fr}}
.talk-list>select{width:100%;margin:0 0 10px;padding:9px;border:1px solid #b8c2d0;border-radius:6px;background:#fff}.category-badge{display:inline-block;margin-top:5px;padding:2px 7px;border-radius:10px;background:#e7eef8;color:#315b88;font-size:11px}.category-editor{display:flex;align-items:center;gap:6px;margin-top:7px;font-size:12px;color:#657187}.category-editor input{width:170px;padding:5px 7px;border:1px solid #aeb8c7;border-radius:5px}.category-editor button{padding:5px 8px}.conversation-tools select{max-width:150px;padding:7px;border:1px solid #8b99aa;border-radius:5px;background:#fff}.conversation-head{align-items:flex-start;flex-wrap:wrap}.conversation-tools{justify-content:flex-end;display:flex;flex-wrap:wrap}
.talk-group-option{display:flex;align-items:center;gap:7px;margin:0 0 12px;font-size:13px;color:#46566b}.talk-group-option input{width:auto;margin:0}.talk-category-heading{position:sticky;top:-16px;z-index:1;margin:8px -8px 0;padding:8px 10px;background:#edf3fa;color:#315b88;font-size:12px;font-weight:700;border-bottom:1px solid #d5dfeb}.message-filter-bar{display:flex;align-items:center;gap:10px;padding:9px 22px;background:#f8fafc;border-bottom:1px solid #d5dce5}.message-filter-bar select{padding:7px;border:1px solid #8b99aa;border-radius:5px;background:#fff}.top-unread{background:#d9343b;color:#fff;border-radius:14px;padding:3px 9px;font-weight:700}.talk-notification-area{position:fixed;z-index:1000;right:18px;top:82px;width:min(380px,calc(100vw - 36px));display:grid;gap:8px}.talk-notification{padding:13px 15px;border-radius:8px;background:#183b66;color:#fff;box-shadow:0 8px 24px #0004;cursor:pointer}.talk-notification.mention{background:#8b4a12}.talk-notification b,.talk-notification span{display:block}.talk-notification span{margin-top:4px;font-size:13px;opacity:.9}.top-actions button{padding:6px 10px;background:#fff;color:#183b66}
.message.mentioned{border-left:5px solid #2563eb!important;background:#eff6ff!important}
.mention-count{display:inline-block;margin-left:.4rem;padding:.1rem .4rem;border-radius:999px;background:#2563eb;color:#fff;font-style:normal}
.unread-count{display:inline-block;padding:.1rem .4rem;border-radius:999px;background:#dc2626;color:#fff;font-style:normal}
.message-reply-quote,.reply-preview{border-left:4px solid #2467b2;background:#f1f5f9;color:#435166;padding:8px 10px;margin:6px 0 9px;border-radius:4px;font-size:13px}.message-reply-quote b,.message-reply-quote span,.reply-preview b,.reply-preview span{display:block}.message-reply-quote span,.reply-preview span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:7px}.message-actions button{font-size:12px;padding:4px 8px}.reply-preview{display:flex;align-items:center;justify-content:space-between;margin:0 0 8px}.reply-preview>div{min-width:0}.reply-preview button{padding:3px 8px}
.composer textarea#body{min-height:84px;max-height:55vh;resize:vertical;overflow:auto}
