.message-shortcut { position:relative; display:inline-flex; align-items:center; gap:7px; min-height:40px; padding:8px 11px; border:1px solid var(--line); border-radius:10px; color:var(--accent-dark); background:var(--panel-solid); text-decoration:none; font-size:.8rem; font-weight:700; }
.message-shortcut:hover { background:var(--soft); }
.message-unread-badge { display:inline-grid; place-items:center; min-width:20px; height:20px; padding:0 5px; border-radius:999px; color:#fff; background:#d3413c; font-size:.68rem; line-height:1; }
.message-unread-badge[hidden] { display:none; }
.message-nav-link { position:relative; }
.message-nav-link .message-unread-badge { margin-left:auto; }
.message-center { width:min(100%,1040px); margin:30px auto 80px; }
.message-center.hidden { display:none; }
.message-hero { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; padding:34px clamp(22px,5vw,52px); border:1px solid rgba(var(--accent-rgb),.18); border-radius:24px; background:linear-gradient(135deg,var(--panel-solid),var(--soft)); box-shadow:0 18px 55px rgba(var(--accent-rgb),.08); }
.message-hero h1 { margin:5px 0 10px; color:var(--accent-dark); font-size:clamp(2rem,5vw,3.7rem); letter-spacing:-.045em; }
.message-hero p { max-width:680px; margin:0; color:var(--muted); line-height:1.7; }
.message-hero > div > span,.message-compose-heading > div > span { color:var(--accent-dark); font-size:.73rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.message-hero button,.message-compose-actions button,.message-card-actions button { border:1px solid rgba(var(--accent-rgb),.25); border-radius:10px; background:var(--panel-solid); color:var(--accent-dark); min-height:42px; padding:9px 14px; font:700 .78rem ui-sans-serif,system-ui,sans-serif; cursor:pointer; }
.message-hero button:hover,.message-card-actions button:hover { background:var(--soft); }
.message-compose { margin-top:24px; padding:26px; border:1px solid var(--line); border-radius:20px; background:var(--panel-solid); }
.message-compose-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:20px; }
.message-compose-heading h2 { margin:5px 0 0; color:var(--accent-dark); font-size:1.3rem; }
.message-audience { padding:6px 10px; border-radius:999px; color:var(--accent-dark); background:var(--soft); font-size:.72rem; font-weight:750; }
.announcement-form { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.announcement-form label { display:grid; gap:7px; color:var(--muted); font-size:.75rem; font-weight:700; }
.announcement-form input,.announcement-form textarea { width:100%; border:1px solid var(--line); border-radius:10px; background:var(--bg); color:var(--text); padding:11px 12px; font:inherit; resize:vertical; }
.announcement-form input:focus,.announcement-form textarea:focus { outline:3px solid rgba(var(--accent-rgb),.14); border-color:var(--accent); }
.message-link-field,.message-compose-actions { grid-column:1/-1; }
.message-link-field small { font-weight:400; }
.message-compose-actions { display:flex; align-items:center; justify-content:flex-end; gap:16px; }
.message-compose-actions output { margin-right:auto; color:var(--accent-dark); font-size:.78rem; }
.message-compose-actions button { color:#fff; background:var(--accent-dark); }
.message-list { display:grid; gap:14px; margin-top:24px; }
.message-card { padding:24px 26px; border:1px solid var(--line); border-radius:18px; background:var(--panel-solid); box-shadow:0 6px 24px rgba(var(--accent-rgb),.04); }
.message-card.is-unread { border-left:5px solid var(--accent); background:linear-gradient(90deg,var(--soft),var(--panel-solid) 36%); }
.message-card-top,.message-card-actions,.message-meta { display:flex; align-items:center; gap:10px; }
.message-kind,.message-new { padding:5px 8px; border-radius:999px; background:var(--soft); color:var(--accent-dark); font-size:.68rem; font-weight:800; }
.message-kind-daily { color:#875d00; background:#fff2bd; }
.message-kind-permission_request,.message-kind-permission_result { color:#315b96; background:#e9f1ff; }
.message-new { color:#fff; background:#d3413c; }
.message-card h2 { margin:13px 0 7px; color:var(--text); font-size:1.14rem; }
.message-card p { margin:0; color:var(--muted); line-height:1.7; }
.message-meta { margin-top:14px; color:var(--muted); font-size:.72rem; }
.message-card-actions { justify-content:flex-end; margin-top:16px; }
.message-action { margin-right:auto; color:var(--accent-dark); font-weight:750; text-decoration:none; }
.message-state { display:grid; gap:6px; place-items:center; min-height:180px; padding:30px; border:1px dashed var(--line); border-radius:18px; color:var(--muted); text-align:center; }
.message-state strong { color:var(--text); font-size:1.05rem; }
.message-state.is-error { color:#9e2f2b; }
@media(max-width:720px) { .message-shortcut-label{display:none}.message-hero{display:grid}.message-hero button{justify-self:start}.announcement-form{grid-template-columns:1fr}.announcement-form label,.message-compose-actions{grid-column:1}.message-compose-actions{align-items:stretch;flex-direction:column}.message-compose-actions output{margin:0}.message-card{padding:20px}.message-meta{align-items:flex-start;flex-direction:column;gap:3px} }
