:root {
    --task-ink: var(--text, #22252a);
    --task-muted: color-mix(in srgb, var(--task-ink) 58%, transparent);
    --task-line: color-mix(in srgb, var(--task-ink) 13%, transparent);
    --task-wash: color-mix(in srgb, var(--accent, #7767d8) 8%, var(--card-bg, #fff));
    --task-accent: var(--accent, #7767d8);
}

#panel-task-center .sheet.task-center-shell {
    width: min(720px, 100%);
    max-width: 720px;
    max-height: min(92vh, 900px);
    padding: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    touch-action: pan-y;
    -webkit-overflow-scrolling: touch;
    background:
        radial-gradient(circle at 84% 2%, color-mix(in srgb, var(--task-accent) 14%, transparent), transparent 34%),
        var(--bg, #f7f7f9);
}

.task-center-hero {
    padding: 22px 22px 16px;
    border-bottom: 1px solid var(--task-line);
}

.task-center-hero .header { margin-bottom: 8px !important; }
.task-center-hero h3 { letter-spacing: -.02em; }
.task-center-hero p { margin: 0; color: var(--task-muted); font-size: .8rem; line-height: 1.55; }

.task-result-inbox {
    margin: 14px 16px 4px;
    padding: 14px;
    border: 1px solid color-mix(in srgb, var(--task-accent) 25%, var(--task-line));
    border-radius: 18px;
    background: color-mix(in srgb, var(--task-accent) 6%, var(--card-bg, #fff));
    box-shadow: 0 14px 30px rgba(34, 25, 74, .06);
}

.task-result-inbox-head { display:flex; align-items:center; gap:9px; margin-bottom:10px; }
.task-result-inbox-head strong { font-size:.88rem; }
.task-result-inbox-head p { margin:2px 0 0; font-size:.7rem; color:var(--task-muted); }
.task-result-count { min-width:21px; height:21px; display:grid; place-items:center; border-radius:999px; background:var(--task-accent); color:white; font-size:.68rem; font-weight:700; }
.task-results-seen-all { margin-left:auto; padding:5px 9px; border:0; border-radius:999px; background:color-mix(in srgb, var(--task-accent) 12%, transparent); color:var(--task-accent); font-size:.66rem; font-weight:650; cursor:pointer; }
.task-results-seen-all:active { transform:translateY(1px); }

#task-results-unseen { display:grid; gap:8px; }
.task-result-card { position:relative; border:1px solid var(--task-line); border-radius:14px; background:var(--card-bg, #fff); overflow:hidden; }
.task-result-card.failed { border-color:rgba(199, 91, 75, .35); background:color-mix(in srgb, #c75b4b 5%, var(--card-bg, #fff)); }
.task-result-open { width:100%; display:flex; align-items:center; gap:10px; padding:11px 12px; border:0; color:inherit; text-align:left; background:transparent; cursor:pointer; }
.task-result-mark { flex:0 0 28px; width:28px; height:28px; display:grid; place-items:center; border-radius:10px; background:color-mix(in srgb, #4f9b77 14%, transparent); color:#3f8a69; font-weight:800; }
.task-result-card.failed .task-result-mark { background:rgba(199, 91, 75, .12); color:#b24c3e; }
.task-result-copy { flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.task-result-copy strong { font-size:.79rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.task-result-copy small { color:var(--task-muted); font-size:.65rem; }
.task-result-copy > span { font-size:.72rem; color:var(--task-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.task-result-arrow { color:var(--task-muted); font-size:1.25rem; }
.task-result-redeliver { position:absolute; right:35px; top:9px; width:auto; padding:4px 9px; border:1px solid rgba(199, 91, 75, .28); border-radius:999px; background:transparent; color:#b24c3e; font-size:.66rem; cursor:pointer; }
.task-results-empty, .task-results-loading { padding:15px 10px; text-align:center; color:var(--task-muted); font-size:.74rem; }
.task-results-empty span { display:block; font-size:1rem; color:#3f8a69; }
.task-results-empty strong { display:block; color:var(--task-ink); margin:3px 0; }
.task-results-empty p { margin:0; }

.task-center-controls { padding: 12px 16px 0; }
.task-center-tabs { display:flex; gap:6px; overflow-x:auto; scrollbar-width:none; padding-bottom:4px; }
.task-center-tabs::-webkit-scrollbar { display:none; }
.task-center-tabs .btn-sec { flex:0 0 auto; border-radius:999px !important; }
.task-center-list-wrap { padding: 6px 16px 88px; }
#task-center-list .task-card { border:1px solid var(--task-line); border-radius:16px; padding:14px; background:var(--card-bg, #fff); box-shadow:0 7px 20px rgba(28, 23, 50, .045); }
#task-center-list .task-card + .task-card { margin-top:9px; }
#panel-task-center .task-create-dock { position:sticky; bottom:0; display:flex; gap:8px; padding:12px 16px max(12px, env(safe-area-inset-bottom)); background:linear-gradient(180deg, transparent, var(--bg, #f7f7f9) 28%); }
#panel-task-center .task-create-dock .btn { border-radius:14px; box-shadow:0 10px 22px color-mix(in srgb, var(--task-accent) 24%, transparent); }

#modal-task-editor { --task-editor-pad: 18px; }
#modal-task-editor .task-editor-sheet { width:min(720px, 100%); max-width:720px !important; max-height:min(92vh, 900px); overflow:auto; padding:0; background:var(--bg, #f7f7f9); }
.task-editor-top { position:sticky; top:0; z-index:4; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px var(--task-editor-pad) 12px; background:color-mix(in srgb, var(--bg, #f7f7f9) 94%, transparent); backdrop-filter:blur(16px); border-bottom:1px solid var(--task-line); }
.task-editor-top h3 { font-size:1.03rem; letter-spacing:-.02em; }
.task-editor-body { padding:16px var(--task-editor-pad) 110px; }
.task-editor-section { margin-bottom:12px; padding:15px; border:1px solid var(--task-line); border-radius:18px; background:var(--card-bg, #fff); box-shadow:0 10px 26px rgba(25, 20, 47, .04); }
.task-editor-section-title { display:flex; align-items:center; gap:9px; margin-bottom:12px; }
.task-editor-section-title > span { width:26px; height:26px; display:grid; place-items:center; border-radius:9px; background:var(--task-wash); color:var(--task-accent); font-size:.72rem; font-weight:800; }
.task-editor-section-title strong { display:block; font-size:.84rem; }
.task-editor-section-title small { display:block; margin-top:1px; color:var(--task-muted); font-size:.66rem; }
#modal-task-editor .input-group { margin-bottom:12px; }
#modal-task-editor .input-group:last-child { margin-bottom:0; }
#modal-task-editor input, #modal-task-editor textarea, #modal-task-editor select { box-sizing:border-box; }
#modal-task-editor textarea, #modal-task-editor input[type="text"], #modal-task-editor input[type="date"], #modal-task-editor input[type="time"], #modal-task-editor input[type="number"], #modal-task-editor select { border-radius:12px !important; border:1px solid var(--task-line) !important; background:color-mix(in srgb, var(--card-bg, #fff) 88%, var(--task-wash)) !important; }
#modal-task-editor textarea:focus, #modal-task-editor input:focus, #modal-task-editor select:focus { outline:2px solid color-mix(in srgb, var(--task-accent) 22%, transparent); border-color:color-mix(in srgb, var(--task-accent) 45%, var(--task-line)) !important; }
.task-mode-switch { display:grid !important; grid-template-columns:1fr 1fr; gap:6px !important; padding:4px; border-radius:14px; background:var(--task-wash); }
.task-mode-switch .task-mode-btn { width:100%; margin:0; border:0; border-radius:11px; background:transparent; box-shadow:none; }
.task-mode-switch .task-mode-btn.active { background:var(--card-bg, #fff); color:var(--task-accent); box-shadow:0 4px 14px rgba(30, 23, 63, .08); }
.task-window-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.task-field-note { margin-top:5px; color:var(--task-muted); font-size:.66rem; line-height:1.45; }
.task-choice-list { display:flex; flex-wrap:wrap; gap:6px; }
.task-choice-chip { cursor:pointer; }
.task-choice-chip input { position:absolute; opacity:0; pointer-events:none; }
.task-choice-chip span { display:block; padding:6px 10px; border:1px solid var(--task-line); border-radius:999px; color:var(--task-muted); font-size:.7rem; }
.task-choice-chip input:checked + span { border-color:color-mix(in srgb, var(--task-accent) 40%, transparent); background:var(--task-wash); color:var(--task-accent); }
.task-editor-fold { margin-top:10px; border-top:1px solid var(--task-line); }
.task-editor-fold > summary { display:flex; align-items:center; gap:8px; padding:13px 0 5px; cursor:pointer; list-style:none; font-size:.77rem; font-weight:650; }
.task-editor-fold > summary::-webkit-details-marker { display:none; }
.task-editor-fold > summary::after { content:'＋'; margin-left:auto; color:var(--task-muted); }
.task-editor-fold[open] > summary::after { content:'−'; }
.task-editor-fold-note { color:var(--task-muted); font-size:.66rem; font-weight:400; }
.task-editor-fold > textarea { display:block; width:100%; min-width:100%; max-width:100%; min-height:88px; margin:6px 0 8px; padding:10px 12px; color:var(--text); line-height:1.5; resize:vertical; }
.task-cap-status { padding:9px 11px; margin-bottom:9px; border-radius:11px; background:var(--task-wash); color:var(--task-muted); font-size:.69rem; }
.task-cap-mode { display:flex; gap:5px; margin-bottom:8px; }
.task-cap-mode button { width:auto; padding:4px 9px; border:1px solid var(--task-line); border-radius:999px; background:transparent; color:var(--task-muted); font-size:.66rem; cursor:pointer; }
.task-cap-mode button.active { border-color:transparent; background:var(--task-accent); color:#fff; }
.task-cap-grid { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:6px; }
.task-cap-choice { display:flex; align-items:center; gap:7px; min-width:0; padding:8px 9px; border:1px solid var(--task-line); border-radius:11px; font-size:.7rem; cursor:pointer; }
.task-cap-choice span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.task-cap-choice.selected { border-color:color-mix(in srgb, var(--task-accent) 38%, transparent); background:var(--task-wash); }
.task-cap-empty { padding:12px; color:var(--task-muted); text-align:center; font-size:.7rem; }
.task-tool-list { display:grid; gap:10px; max-height:320px; overflow:auto; }
.task-tool-group { display:grid; gap:5px; }
.task-tool-group-title { display:flex; align-items:baseline; gap:6px; padding:2px 2px 0; font-size:.68rem; font-weight:700; }
.task-tool-group-title span { color:var(--task-muted); font-size:.6rem; font-weight:400; }
.task-tool-row { display:grid; grid-template-columns:minmax(0, 1fr) auto; align-items:center; gap:8px; padding:8px 9px; border:1px solid var(--task-line); border-radius:12px; }
.task-tool-row.overridden { border-color:color-mix(in srgb, var(--task-accent) 38%, transparent); background:var(--task-wash); }
.task-tool-copy { min-width:0; }
.task-tool-copy strong, .task-tool-copy span { display:block; overflow-wrap: anywhere; word-break:break-word; }
.task-tool-copy strong { font-size:.7rem; line-height:1.35; }
.task-tool-copy span { margin-top:2px; color:var(--task-muted); font-size:.6rem; }
.task-tool-row.overridden .task-tool-copy span { color:var(--task-accent); }
.task-tool-row select { width:auto; max-width:150px; padding:5px 7px !important; font-size:.64rem; }
.task-limit-row { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.task-limit-row label { display:flex; align-items:center; gap:5px; margin:0; font-size:.72rem; }
.task-limit-row input[type="number"] { width:78px; padding:5px 8px; }
.task-legacy-note { margin:0 0 10px; padding:10px 12px; border-left:3px solid #bd8738; border-radius:10px; background:rgba(189, 135, 56, .08); color:var(--task-muted); font-size:.69rem; line-height:1.5; }
#task-editor-mode-wi-group > .input-group:not(.task-t3-visible),
.task-editor-project-legacy { display:none; }
.task-editor-actions { position:sticky; bottom:0; z-index:4; display:flex; gap:8px; padding:12px var(--task-editor-pad) max(12px, env(safe-area-inset-bottom)); background:linear-gradient(180deg, transparent, var(--bg, #f7f7f9) 27%); }
.task-editor-actions .btn { margin:0 !important; border-radius:14px; }
.task-result-detail-state { display:inline-flex; padding:4px 9px; margin-bottom:12px; border-radius:999px; background:rgba(75, 154, 116, .12); color:#3f8a69; font-size:.69rem; font-weight:700; }
.task-result-detail-state.failed { background:rgba(199, 91, 75, .12); color:#b24c3e; }
.task-result-detail-error { margin-bottom:10px; padding:10px; border-radius:10px; background:rgba(199, 91, 75, .08); color:#b24c3e; font-size:.75rem; }
.task-result-detail-content { white-space:normal; overflow-wrap:anywhere; line-height:1.7; font-size:.82rem; }
.task-result-detail-redeliver { width:100%; margin-top:16px; }
.task-result-detail-attachments { display:grid; gap:6px; margin-top:14px; padding-top:12px; border-top:1px solid var(--task-line); }
.task-result-detail-attachments-head { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 8px; font-size:.72rem; font-weight:700; }
.task-result-detail-attachments-head span { color:var(--task-muted); font-size:.64rem; font-weight:400; }
.task-result-detail-attachment { padding:8px 10px; border:1px solid var(--task-line); border-radius:10px; font-size:.72rem; overflow-wrap:anywhere; }

@media (max-width: 640px) {
    #panel-task-center .sheet.task-center-shell, #modal-task-editor .task-editor-sheet { width:100%; max-width:none !important; border-radius:0; }
    #panel-task-center.sidebar-panel.active .sheet.task-center-shell { height:100dvh !important; max-height:100dvh !important; overflow-y:auto !important; touch-action:pan-y; }
    #modal-task-editor .task-editor-sheet { max-height:100dvh; min-height:100dvh; }
    #modal-task-editor { --task-editor-pad: 13px; }
    .task-center-hero { padding:16px 15px 13px; }
    .task-result-inbox { margin:11px 10px 3px; padding:11px; border-radius:15px; }
    .task-center-controls, .task-center-list-wrap { padding-left:10px; padding-right:10px; }
    .task-editor-section { padding:13px; border-radius:15px; }
    .task-window-grid, .task-cap-grid { grid-template-columns:1fr; }
    .task-tool-row select { max-width:128px; }
    .task-result-copy > span { max-width:70vw; }
}
