.special-function-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); gap:18px; margin-bottom:24px; }
.special-function-card { border-top:5px solid var(--function-color); min-width:0; overflow-wrap:anywhere; }
.special-function-card.archived { border-top-style:dashed; }
.special-function-card h2 { margin-top:0; }
.special-function-card p { white-space:pre-line; }
.special-page-heading h1,.special-page-heading .lead { overflow-wrap:anywhere; }
.special-function-label { display:inline-block; border-left:4px solid var(--function-color,var(--green)); padding:3px 8px; background:var(--sage); color:var(--ink); border-radius:4px; font-size:12px; font-weight:700; line-height:1.4; overflow-wrap:anywhere; max-width:100%; box-sizing:border-box; white-space:normal; }
.special-task-panel,.special-event-panel { margin-top:24px; }
.special-task-filters { display:flex; flex-wrap:wrap; align-items:end; gap:14px; margin-bottom:20px; }
.special-task-filters label { display:grid; gap:6px; min-width:0; }
.special-task-filters select { max-width:100%; padding:10px; border:1px solid var(--line); border-radius:8px; background:var(--card); color:var(--ink); font:inherit; }
.special-task-row { display:flex; gap:14px; align-items:start; border-top:1px solid var(--line); padding:18px 0; }
.special-task-content { flex:1; min-width:0; display:grid; gap:8px; overflow-wrap:anywhere; }
.special-task-title { font-weight:750; }
.special-task-row.is-complete .special-task-title { text-decoration:line-through; }
.special-task-check { width:44px; height:44px; border:1px solid var(--line); border-radius:50%; background:var(--card); color:var(--green); font-size:25px; cursor:pointer; }
.special-task-row.is-complete .special-task-check { background:var(--sage); }
.special-task-content small,.special-event-row small { color:var(--muted); }
.special-overdue,.special-task-content small.special-overdue { color:var(--red); font-weight:750; }
.special-event-row { display:flex; gap:22px; padding:16px 0; border-top:1px solid var(--line); overflow-wrap:anywhere; }
.special-event-row>div { min-width:0; display:grid; gap:6px; }
.special-quick-launch { flex-shrink:0; padding:10px 12px; gap:6px; min-height:44px; }
.special-quick-dialog { width:480px; max-width:calc(100vw - 32px); max-height:calc(100dvh - 32px); overflow:auto; padding:24px; border:1px solid var(--line); border-radius:16px; background:var(--card); color:var(--ink); box-sizing:border-box; box-shadow:0 20px 70px #0004; }
.special-quick-dialog::backdrop { background:#0006; }
.special-quick-heading { display:flex; gap:16px; align-items:start; justify-content:space-between; }
.special-quick-heading h2 { font-size:24px; margin:6px 0; }
.special-quick-dialog input,.special-quick-dialog select,.special-quick-dialog textarea { min-width:0; width:100%; box-sizing:border-box; padding:11px; border:1px solid var(--line); border-radius:8px; background:var(--card); color:var(--ink); font:inherit; }
.special-quick-dialog summary { padding:8px 0; cursor:pointer; }
.special-quick-dialog small { color:var(--muted); }
.special-function-grid .actions,.page-heading .actions { flex-wrap:wrap; }
@media(max-width:850px) {
 .topbar .special-quick-launch { width:44px; height:44px; padding:8px; display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; font-size:23px; }
 .special-quick-launch .special-quick-label { display:none; }
 .topbar:has(.special-quick-launch) .account-details>summary { max-width:min(120px,calc(100vw - 238px)); }
 .special-task-row { gap:10px; flex-wrap:wrap; }
 .special-task-row>.button { margin-left:54px; }
 .special-task-filters { align-items:stretch; }
 .special-task-filters label { flex:1 1 180px; }
 .special-event-row { flex-direction:column; gap:10px; }
}
@media print { .special-quick-launch,.special-quick-dialog,.special-task-check { display:none!important; } }
