.resource-request-entry { display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; margin:12px 0 0; font-size:12px; color:var(--muted); }
.resource-request-entry button, .resource-request-empty { border:1px solid var(--line-strong); border-radius:9px; padding:7px 12px; background:var(--surface-soft); color:var(--accent); cursor:pointer; font:inherit; }
.resource-request-receipt[hidden], .resource-progress-result[hidden] { display:none; }
.resource-request-receipt { padding:14px; border:1px solid var(--line-strong); border-radius:12px; margin-bottom:18px; background:var(--surface-soft); }
.resource-request-receipt input { font-family:ui-monospace,Consolas,monospace !important; font-size:13px !important; }
.receipt-actions { display:flex; flex-wrap:wrap; gap:8px; }
.receipt-actions button, #resourceProgressForm button, .resource-progress-code button { border:1px solid var(--line-strong); border-radius:9px; padding:9px 12px; background:var(--surface-soft); color:var(--text); font:inherit; font-size:13px; cursor:pointer; }
#resourceProgressForm button { background:#28715e; border-color:#28715e; color:#fff; width:100%; }
.resource-progress-history { display:grid; gap:7px; max-height:180px; overflow-y:auto; }
.resource-progress-history-item { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:6px 12px; text-align:left; padding:10px 12px; border:1px solid var(--line-strong); border-radius:9px; background:var(--surface-soft); color:var(--text); font:inherit; cursor:pointer; }
.resource-progress-history-item strong { font-size:13px; overflow-wrap:anywhere; }
.resource-progress-history-item small { font-size:11px; color:var(--muted); }
.resource-progress-result { padding:16px; border:1px solid var(--line-strong); border-radius:12px; background:var(--surface-soft); }
.resource-progress-heading { display:flex; flex-wrap:wrap; align-items:start; gap:10px; }
.resource-progress-heading h3 { flex:1; min-width:0; margin:0; font-size:16px; line-height:1.6; overflow-wrap:anywhere; }
.resource-progress-badge { padding:5px 8px; border-radius:7px; background:#eaf4ff; color:#0065d3; font-size:12px; white-space:nowrap; }
.resource-progress-badge[data-status="fulfilled"] { background:#e7f7ef; color:#047857; }
.resource-progress-badge[data-status="searching"] { background:#fff5e5; color:#9b6507; }
.resource-progress-badge[data-status="unavailable"] { background:#edf0f3; color:#526477; }
.resource-progress-reply { white-space:pre-wrap; overflow-wrap:anywhere; }
.resource-progress-result .resource-progress-time { font-size:11px; }
.resource-progress-link { display:block; text-align:center; border-radius:10px; padding:11px 16px; background:#28715e; color:#fff !important; text-decoration:none; font-size:14px; }
.resource-progress-code { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:8px; margin-top:12px; font-size:13px; overflow-wrap:anywhere; }
.resource-request-dialog { box-sizing:border-box; width:min(480px, calc(100% - 28px)); max-height:calc(100dvh - 32px); overflow-y:auto; border:1px solid var(--line-strong); border-radius:20px; padding:24px; background:var(--surface-strong, #fff); color:var(--text, #263d37); box-shadow:0 24px 70px rgba(0,0,0,.24); }
.resource-request-dialog::backdrop { background:rgba(0,0,0,.48); }
.resource-request-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.resource-request-heading h2 { font-size:20px; margin:0; }
.resource-request-heading button { background:transparent; border:0; color:inherit; font-size:28px; width:40px; height:40px; cursor:pointer; }
.resource-request-dialog p { line-height:1.7; font-size:13px; color:var(--muted, #63756e); }
.resource-request-dialog label { display:block; margin:18px 0; font-size:14px; }
.resource-request-dialog label span { font-size:12px; color:var(--muted); }
.resource-request-dialog input, .resource-request-dialog textarea { display:block; box-sizing:border-box; width:100%; margin-top:8px; padding:12px; border:1px solid var(--line-strong, #ccc); border-radius:10px; background:var(--surface-soft, #f6f8f7); color:inherit; font:inherit; font-size:16px; }
.resource-request-dialog textarea { resize:vertical; }
.resource-request-dialog .resource-request-status { color:var(--text); min-height:24px; }
.resource-request-actions { display:flex; justify-content:flex-end; gap:10px; }
.resource-request-actions button { border:1px solid var(--line-strong, #ccc); border-radius:10px; padding:10px 16px; font:inherit; background:var(--surface-soft, #fff); color:inherit; cursor:pointer; }
.resource-request-actions [type="submit"] { background:#28715e; color:#fff; border-color:#28715e; }
.resource-request-actions button:disabled { opacity:.6; cursor:wait; }
[data-resource-request]:focus-visible, .resource-request-dialog :focus-visible { outline:3px solid var(--accent, #28715e); outline-offset:3px; }
