.application-approvals { color:var(--text); font:inherit; min-width:0; padding:20px 0; }
.application-approvals h2,.application-approvals h3,.application-approvals h4 { color:var(--text); line-height:1.35; margin:24px 0 12px; }
.application-approvals h3:first-child { margin-top:0; }.application-approvals h4 { font-size:1rem; }
.application-approvals p { line-height:1.55; max-width:75ch; margin:10px 0; overflow-wrap:anywhere; }
.application-approvals .approval-intro,.application-approvals .approval-message { color:var(--text-2); }.application-approvals .approval-message { min-height:26px; }
.application-approvals .approval-warning,.application-approvals [role=alert] { color:var(--text); background:var(--surface-2); padding:12px 14px; border-radius:8px; }
.application-approvals [role=alert] { outline:1px solid var(--red,#b42318); }
.application-approvals .approval-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 24px; margin:20px 0; }
.application-approvals .approval-field { display:grid; gap:8px; margin:16px 0; color:var(--text); min-width:0; font-weight:500; }
.application-approvals .approval-field input,.application-approvals .approval-field select,.application-approvals .approval-field textarea { width:100%; min-width:0; min-height:44px; padding:10px 12px; font:inherit; font-weight:400; color:var(--text); background:var(--surface); border:1px solid var(--border-2,var(--border)); border-radius:8px; box-sizing:border-box; }
.application-approvals .approval-field textarea { resize:vertical; }.application-approvals .approval-field select { text-overflow:ellipsis; }
.application-approvals .approval-confirm { display:flex; align-items:flex-start; gap:10px; margin:14px 0; max-width:75ch; line-height:1.5; color:var(--text); }
.application-approvals .approval-confirm input { flex:0 0 18px; width:18px; height:18px; min-height:18px; padding:0; margin:3px 0 0; accent-color:var(--primary); }
.application-approvals .approval-choice { margin:20px 0; padding:16px; border:1px solid var(--border); border-radius:8px; min-width:0; }
.application-approvals legend { padding:0 8px; font-weight:600; }.application-approvals details { margin:20px 0; }.application-approvals summary { cursor:pointer; color:var(--text); font-weight:600; min-height:44px; display:list-item; align-content:center; }
.application-approvals .approval-stage { display:flex; gap:12px 20px; align-items:center; flex-wrap:wrap; padding:16px 0; border-bottom:1px solid var(--border); }
.application-approvals .approval-stage strong { flex:1 1 220px; }.application-approvals .approval-stage span { color:var(--text-2); flex:1 1 200px; }
.application-approvals .approval-history,.application-approvals .approval-request,.application-approvals .approval-round { margin:28px 0 0; padding-top:20px; border-top:1px solid var(--border); }
.application-approvals .approval-package { margin:24px 0; padding:0; }.application-approvals .approval-fact { display:grid; grid-template-columns:minmax(130px,1fr) minmax(0,2fr); gap:8px 16px; padding:8px 0; border-bottom:1px solid var(--border); overflow-wrap:anywhere; }
.application-approvals .approval-file,.application-approvals .approval-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }.application-approvals .approval-file span { flex:1 1 240px; }
.application-approvals .btn { min-height:44px; margin:6px 10px 6px 0; padding:10px 16px; white-space:normal; max-width:100%; color:var(--text); background:var(--surface); border:1px solid var(--border-2,var(--border)); border-radius:8px; cursor:pointer; font:inherit; }
.application-approvals .btn.primary { color:var(--experience-action-text,#fff); background:var(--experience-action-bg,#176ca4); border-color:var(--experience-action-border,#176ca4); }
.application-approvals .btn:hover:enabled { background:var(--surface-2); }.application-approvals .btn.primary:hover:enabled { background:var(--experience-action-hover,#125a89); }.application-approvals .btn:disabled { opacity:.55; cursor:default; }
.application-approvals :focus-visible { outline:2px solid var(--primary); outline-offset:3px; }.application-approvals ::selection { background:var(--primary-soft); color:var(--text); }.application-approvals input,.application-approvals textarea { caret-color:var(--primary); }.application-approvals [hidden] { display:none!important; }
.application-approval-entry > summary { min-height:44px; cursor:pointer; align-content:center; font-weight:600; }
@media(max-width:760px){.application-approvals .approval-grid,.application-approvals .approval-fact{grid-template-columns:minmax(0,1fr);}.application-approvals .approval-stage{align-items:flex-start;}}
