@charset "UTF-8";

.receipt-directory { --receipt-blue:#15599a; --receipt-dark:#103f72; --receipt-line:#d6e0eb; --receipt-muted:#63748a; min-width:0; font-size:18px; color:#24364b; background:#fff; border:1px solid var(--receipt-line); border-radius:4px; margin-bottom:22px; }
.receipt-directory *, .receipt-directory *::before, .receipt-directory *::after { box-sizing:border-box; }
.receipt-directory button, .receipt-directory input, .receipt-directory select { font:inherit; }
.receipt-directory button, .receipt-directory select, .receipt-directory summary { min-height:44px; }
.receipt-directory button:focus-visible, .receipt-directory select:focus-visible, .receipt-directory input:focus-visible, .receipt-directory summary:focus-visible { outline:3px solid #4b91d4; outline-offset:3px; }
.receipt-heading { border-top:4px solid var(--receipt-blue); border-bottom:1px solid var(--receipt-line); padding:24px; background:#f8fbff; }
.receipt-heading h2 { margin:0 0 8px; font-size:26px; line-height:1.5; color:var(--receipt-dark); }
.receipt-heading p { margin:7px 0 0; line-height:1.8; overflow-wrap:anywhere; }
.receipt-heading .receipt-eyebrow { margin:0 0 8px; font-size:16px; color:var(--receipt-muted); letter-spacing:1px; }
.receipt-route { color:var(--receipt-blue); font-weight:600; }
.receipt-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; padding:22px 24px 0; }
.receipt-summary > div { min-width:0; background:#f5f8fc; border:1px solid var(--receipt-line); border-top:3px solid #80a7cf; padding:15px 18px; }
.receipt-summary span { display:block; color:#526780; font-size:17px; }
.receipt-summary strong { display:block; color:var(--receipt-dark); font-size:30px; line-height:1.5; margin-top:4px; }
.receipt-toolbar { padding:18px 24px 22px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px 24px; border-bottom:1px solid var(--receipt-line); }
.receipt-toolbar p { flex:1 1 460px; margin:0; color:var(--receipt-muted); font-size:16px; line-height:1.8; }
.receipt-toolbar label { display:flex; align-items:center; gap:12px; font-size:17px; max-width:100%; }
.receipt-toolbar select, .receipt-existing select { max-width:100%; min-width:0; min-height:46px; border:1px solid #bfcfe0; border-radius:3px; background:#fff; color:#24364b; padding:8px 12px; }
.receipt-group { min-width:0; padding:22px 24px 0; }
.receipt-group-heading { display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding-bottom:12px; border-bottom:2px solid #dce6f1; margin-bottom:16px; }
.receipt-group-heading h3 { margin:0; color:var(--receipt-dark); font-size:22px; line-height:1.65; }
.receipt-group-heading > span { color:var(--receipt-muted); font-size:16px; white-space:nowrap; }
.receipt-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; align-items:start; min-width:0; }
.receipt-slot { min-width:0; max-width:100%; border:1px solid #cfdae6; border-radius:4px; background:#fff; overflow:hidden; }
.receipt-slot-header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:17px 18px; background:#f7faff; border-bottom:1px solid #dce5ef; }
.receipt-slot-header > div { min-width:0; }
.receipt-slot-number { font-size:15px; line-height:1.6; color:var(--receipt-muted); }
.receipt-slot h4 { font-size:20px; line-height:1.65; color:#234b72; margin:5px 0 0; overflow-wrap:anywhere; }
.receipt-status { flex:0 0 auto; max-width:46%; font-size:15px; line-height:1.65; border:1px solid #e1cfa9; background:#fff9ed; color:#805b1f; padding:4px 8px; border-radius:3px; text-align:center; overflow-wrap:anywhere; }
.receipt-status-received .receipt-status { color:#205d88; background:#edf5fd; border-color:#bed4e8; }
.receipt-status-pending .receipt-status { color:#755c36; background:#fbf5e9; border-color:#e2d4b7; }
.receipt-slot-body { min-width:0; padding:18px; }
.receipt-requirement { display:inline-block; font-size:16px; line-height:1.65; padding:3px 10px; border:1px solid #c4d6e7; border-radius:3px; background:#edf4fc; color:#345f87; margin-bottom:10px; }
.receipt-requirement-required { color:#8e353b; border-color:#e5c6ca; background:#fff3f4; }
.receipt-requirement-optional { color:#536b66; background:#f2f7f5; border-color:#cfded8; }
.receipt-requirement-pending { color:#755c36; background:#fbf5e9; border-color:#e2d4b7; }
.receipt-notes { margin:0 0 14px; padding-left:23px; color:#526780; line-height:1.8; font-size:17px; }
.receipt-notes li { margin:3px 0; overflow-wrap:anywhere; }
.receipt-condition { margin:0 0 14px; padding:10px 12px; border-left:3px solid #bf9651; background:#fcf8ee; color:#735723; font-size:16px; line-height:1.8; }
.receipt-drop { position:relative; min-width:0; padding:20px 15px; background:#f8fbff; border:1px dashed #94b1d0; border-radius:3px; text-align:center; transition:background .15s,border-color .15s; }
.receipt-drop:hover, .receipt-drop:focus-within, .receipt-drop.is-dragging, .receipt-drop.drag-over { background:#edf5fe; border-color:#15599a; }
.receipt-drop p { margin:0 0 13px; font-size:18px; color:#345b7d; line-height:1.7; }
.receipt-drop small { display:block; margin:11px auto 0; max-width:100%; font-size:15px; color:var(--receipt-muted); line-height:1.8; overflow-wrap:anywhere; }
.receipt-native-file { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); clip-path:inset(50%); padding:0; margin:-1px; border:0; white-space:nowrap; }
.receipt-button { display:inline-flex; align-items:center; justify-content:center; gap:7px; max-width:100%; min-height:44px; padding:8px 15px; border:1px solid #becfe1; border-radius:3px; background:#fff; color:var(--receipt-blue); line-height:1.6; font-size:17px; cursor:pointer; text-align:center; text-decoration:none; white-space:normal; overflow-wrap:anywhere; }
.receipt-button:hover { border-color:#5a8cbb; background:#edf5fe; }
.receipt-button-primary { border-color:var(--receipt-blue); color:#fff; background:var(--receipt-blue); }
.receipt-button-primary:hover { background:var(--receipt-dark); border-color:var(--receipt-dark); color:#fff; }
.receipt-directory button:disabled, .receipt-directory input:disabled, .receipt-directory select:disabled { cursor:wait; opacity:.6; }
.receipt-existing { display:flex; flex-direction:column; gap:7px; margin:15px 0 0; min-width:0; }
.receipt-existing > span { font-size:17px; color:#45617d; }
.receipt-existing select { width:100%; text-overflow:ellipsis; }
.receipt-association-empty { margin:12px 0 0; color:var(--receipt-muted); font-size:15px; line-height:1.8; }
.receipt-file-list { margin-top:18px; padding-top:14px; border-top:1px solid #dce5ef; }
.receipt-file-list h5, .receipt-generated-files h5 { margin:0 0 9px; font-size:17px; color:#385a79; line-height:1.7; }
.receipt-file-list h5 span { font-size:15px; font-weight:400; color:var(--receipt-muted); }
.receipt-file-list > ul, .receipt-other-files { padding:0; margin:0; list-style:none; }
.receipt-file { padding:12px 0; border-bottom:1px solid #e3eaf2; }
.receipt-file:last-child { border-bottom:0; padding-bottom:0; }
.receipt-file-description { min-width:0; }
.receipt-source { display:block; max-width:100%; min-height:44px; padding:0; text-align:left; border:0; border-radius:0; background:transparent; color:var(--receipt-blue); text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; white-space:normal; line-height:1.75; font-size:17px; cursor:pointer; }
.receipt-source:hover { color:var(--receipt-dark); background:transparent; }
.receipt-file-description small, .receipt-file-note { display:block; margin:3px 0; overflow-wrap:anywhere; color:var(--receipt-muted); font-size:14px; line-height:1.8; }
.receipt-file-note { color:#8a6229; font-size:15px; }
.receipt-file-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:9px; }
.receipt-file-actions .receipt-button { font-size:15px; min-height:44px; padding:7px 10px; }
.receipt-references { margin-top:16px; border-top:1px solid #dce5ef; padding-top:9px; min-width:0; }
.receipt-references summary { padding:9px 0; color:#456a8b; font-size:16px; cursor:pointer; line-height:1.75; overflow-wrap:anywhere; }
.receipt-references > ul { margin:5px 0 0; padding-left:20px; max-height:400px; overflow:auto; overscroll-behavior:contain; }
.receipt-references li { padding:9px 0; color:#556d84; font-size:15px; line-height:1.85; overflow-wrap:anywhere; }
.receipt-references li + li { border-top:1px solid #e3eaf2; }
.receipt-references strong { color:#385a79; font-weight:600; }
.receipt-references p { margin:5px 0; }
.receipt-reference-source { color:#697e92; }
.receipt-generated { padding:15px; background:#f5f8fc; border:1px solid #d4e0ec; border-radius:3px; }
.receipt-generated p { margin:0 0 12px; font-size:17px; color:#526b84; line-height:1.85; }
.receipt-generated ul, .receipt-generated-files ul { margin:9px 0 14px; padding-left:21px; color:#526b84; font-size:16px; line-height:1.85; overflow-wrap:anywhere; }
.receipt-generated-files { margin-top:15px; }
.receipt-display-count { color:var(--receipt-muted); font-size:16px; margin:20px 24px; }
.receipt-empty, .receipt-progress { margin:22px 24px; background:#f4f8fd; color:#526b84; padding:18px; border:1px solid #d8e4ef; font-size:18px; line-height:1.8; }
.receipt-secondary { min-width:0; margin:0 24px 20px; border:1px solid #d6e0eb; background:#fbfcfe; border-radius:3px; padding:0 17px; }
.receipt-secondary > summary { cursor:pointer; color:#456580; padding:13px 0; font-size:17px; line-height:1.75; overflow-wrap:anywhere; }
.receipt-secondary > p { margin:4px 0 14px; color:var(--receipt-muted); font-size:16px; line-height:1.85; }
.receipt-inactive-list { padding:0; margin:0 0 12px; list-style:none; max-height:420px; overflow:auto; overscroll-behavior:contain; }
.receipt-inactive-list li { padding:12px 0; border-top:1px solid #e3eaf2; overflow-wrap:anywhere; }
.receipt-inactive-list strong { display:block; font-size:17px; color:#506b83; font-weight:500; }
.receipt-inactive-list span { display:block; margin-top:5px; color:var(--receipt-muted); font-size:15px; line-height:1.8; }
.receipt-other-files { max-height:560px; overflow:auto; overscroll-behavior:contain; padding-bottom:17px; }
@media (max-width:850px) { .receipt-grid { grid-template-columns:1fr; } .receipt-summary { gap:12px; } .receipt-summary > div { padding:13px; } }
@media (max-width:540px) { .receipt-heading { padding:20px 16px; } .receipt-heading h2 { font-size:23px; } .receipt-summary { grid-template-columns:repeat(2,minmax(0,1fr)); padding:18px 16px 0; } .receipt-summary span { font-size:16px; } .receipt-summary strong { font-size:28px; } .receipt-toolbar { padding:17px 16px; } .receipt-toolbar label { width:100%; justify-content:space-between; } .receipt-toolbar select { flex:1; } .receipt-group { padding:20px 16px 0; } .receipt-group-heading h3 { font-size:21px; } .receipt-slot-header { padding:15px 13px; gap:10px; } .receipt-slot h4 { font-size:19px; } .receipt-status { font-size:14px; padding:4px 6px; max-width:43%; } .receipt-slot-body { padding:15px 13px; } .receipt-drop { padding:17px 10px; } .receipt-display-count { margin:17px 16px; } .receipt-secondary { margin:0 16px 17px; padding:0 12px; } .receipt-empty, .receipt-progress { margin:18px 16px; } }
