/* The materials browser owns its layout; shared confirmation-dialog styles exclude it. */
.materials-dialog{position:fixed;inset:0;box-sizing:border-box;margin:auto;width:min(840px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;padding:24px;border:1px solid var(--line,#dce5df);border-radius:16px;background:var(--surface,#fff);color:var(--ink,#213d31);box-shadow:0 24px 90px #102b3033;font:13px/1.5 var(--sans,sans-serif)}
.materials-dialog::backdrop{background:#102b3059;backdrop-filter:blur(3px)}
.materials-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.materials-header>div:first-child{min-width:0}.materials-header h2{margin:0;font-size:18px;line-height:1.4;font-weight:650;letter-spacing:0}.materials-header p{margin:6px 0 0;color:var(--ink-3);font-size:12px;line-height:1.6}
.materials-actions{display:flex;align-items:center;gap:12px;flex:none}
.materials-dialog button{font:inherit;cursor:pointer}.materials-dialog button:disabled{cursor:default;opacity:.5}
.materials-actions [data-add]{height:34px;padding:0 14px;border:1px solid var(--accent);border-radius:7px;background:var(--accent);color:#fff;white-space:nowrap;font-weight:600}
.materials-actions [data-close]{width:30px;height:30px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--ink-3);font-size:22px;line-height:1}
.materials-actions [data-close]:hover{background:var(--bui-hover,var(--bg))}
.materials-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 132px 132px;gap:10px;margin:22px 0 12px;align-items:center}
.materials-toolbar input,.materials-toolbar select{box-sizing:border-box;width:100%;min-width:0;height:36px;margin:0;padding:0 10px;border:1px solid var(--line-strong,#cbd9d0);border-radius:7px;background:var(--surface,#fff);color:var(--ink);font:13px var(--sans,sans-serif)}
.materials-toolbar input::placeholder{color:var(--ink-3)}.materials-toolbar select{cursor:pointer}
.materials-drop{padding:12px 14px;border:1px dashed var(--line-strong,#cbd9d0);border-radius:8px;background:var(--bg,#f8faf7);color:var(--ink-3);font-size:12px;line-height:1.6}
.materials-drop.dragging{border-color:var(--accent);background:var(--accent-soft)}
.materials-status{font-size:12px;line-height:1.6;color:var(--ink-2);margin:12px 0}.materials-status:empty{display:none}
.materials-table{margin-top:18px;overflow:auto}.materials-table table{border-collapse:collapse;table-layout:fixed;width:100%;font:13px/1.5 var(--sans,sans-serif)}
.materials-table th,.materials-table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line,#e5e7eb);vertical-align:middle}
.materials-table th{padding-top:8px;padding-bottom:8px;background:var(--bg,#f8faf7);color:var(--ink-3);font-size:11px;font-weight:500}
.materials-table th:nth-child(2){width:76px}.materials-table th:last-child{width:64px}.materials-table th:last-child,.materials-table td:last-child{text-align:right}
.materials-table td button,.materials-status button{background:transparent;border:0;color:var(--ink-2);padding:4px 6px;border-radius:5px;text-align:left;font-size:12px}
.materials-table [data-action]{white-space:nowrap}
.materials-table td [data-open]{display:block;width:100%;padding:0;color:var(--ink);font-size:13px;font-weight:500;line-height:1.6;overflow-wrap:anywhere}
.materials-table td [data-open]:hover{color:var(--accent)}.materials-table [data-action]:hover:not(:disabled),.materials-status button:hover:not(:disabled){background:var(--bui-hover,var(--bg));color:var(--accent)}
.materials-table small{display:block;color:var(--ink-3);margin-top:4px;font-size:11px}.materials-format{display:inline-block;padding:2px 6px;border-radius:4px;background:var(--bg,#f8faf7);color:var(--ink-3);font:10px/1.6 var(--mono,monospace)}
.materials-empty{padding:32px 12px;margin:0;text-align:center;color:var(--ink-3);font-size:13px}
.material-upload{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:3px;padding:12px 0;border-bottom:1px solid var(--line,#e5e7eb);font-size:12px}
.material-upload span{grid-column:1;overflow-wrap:anywhere}.material-upload span+span{color:var(--ink-3);font-size:11px}.material-upload[data-state="失败"] span+span{color:var(--crit,#b43b3b)}.material-upload button{grid-column:2;grid-row:1 / 3;align-self:center;border:1px solid var(--line-strong);border-radius:6px;padding:5px 9px;background:var(--surface);color:var(--ink-2);font-size:12px}
.material-references{font-size:12px;color:var(--ink-3);margin:10px 0}.material-references>div{padding:6px 0}.materials-labs{margin-bottom:24px}
.rail-section-head .materials-manage{flex:none;width:auto;min-width:40px;height:24px;margin-left:auto;padding:0 7px;white-space:nowrap;border:0;background:transparent;color:var(--ink-3);font:500 11px/24px var(--sans);letter-spacing:0}
.rail-section-head .materials-manage:hover{background:var(--bui-hover,var(--bg));color:var(--accent)}.rail-section-head .materials-manage:not([hidden])+#railAttachButton{margin-left:0;flex:none}
.materials-scope{display:inline-flex;align-items:center;padding:3px 0;margin:0 0 6px;border:0;background:transparent;text-align:left;color:var(--ink-3);font:12px/1.5 var(--sans);cursor:pointer}.materials-scope:hover{color:var(--accent)}
@media(max-width:600px){.materials-dialog{padding:18px 14px;width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.materials-header{gap:12px}.materials-header h2{font-size:17px}.materials-actions{gap:6px}.materials-actions [data-add]{padding:0 10px;font-size:12px}.materials-toolbar{grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.materials-toolbar input{grid-column:1 / -1}.materials-table th,.materials-table td{padding-left:6px;padding-right:6px}.materials-table th:nth-child(2){width:54px}.materials-table th:last-child{width:54px}.materials-table [data-action]{white-space:nowrap}
.materials-table td [data-open]{font-size:12px}.materials-drop{padding:10px 12px}}
