:root{color-scheme:light;--green-800: #0d5c2b;--green-700: #0e6e33;--green-600: #12873f;--green-100: #d9e8dc;--green-50: #edf4ee;--navy: #26425f;--navy-deep: #1d3349;--ink: #1c1e1c;--bg: #fafaf8;--surface: #ffffff;--surface-2: #f4f4f0;--border: #e7e7e1;--border-strong: #d2d2c9;--text: var(--ink);--muted: #6d716c;--amber-bg: #f6ecce;--amber-text: #79600f;--terracotta-bg: #f6e0d6;--terracotta-text: #99401f;--plum-bg: #ece0f0;--plum-text: #66407a;--accent: var(--green-700);--accent-dark: var(--green-800);--radius: 12px;--shadow-card: 0 1px 2px rgba(28, 30, 28, .04), 0 6px 20px rgba(28, 30, 28, .05);--font-display: "Adobe Garamond Pro", Garamond, Georgia, "Times New Roman", serif}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}h1{font-family:var(--font-display);font-size:23px;font-weight:600;text-transform:uppercase;letter-spacing:3px;color:var(--navy);margin:0 0 18px}.signin-screen{min-height:100vh;display:flex;align-items:center;justify-content:center}.app-shell{min-height:100vh}.app-header{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:var(--surface);border-bottom:1px solid var(--border)}.app-title{font-family:var(--font-display);font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:2.2px;color:var(--navy);text-decoration:none}.hamburger{border:none;background:none;font-size:18px;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .15s ease}.hamburger:hover{background:var(--surface-2)}.account-menu{position:relative}.account-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;border:none;font-size:13px;font-weight:700;padding:0;display:flex;align-items:center;justify-content:center;transition:background .15s ease,box-shadow .15s ease}.account-avatar:hover{background:var(--accent-dark);box-shadow:0 0 0 3px var(--green-100)}.account-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 10px 32px #262a2224;min-width:220px;overflow:hidden;z-index:50}.account-dropdown-identity{padding:12px 16px;border-bottom:1px solid var(--border)}.account-dropdown-name{font-size:13.5px;font-weight:600;color:var(--text)}.account-dropdown-email{font-size:12px;color:var(--muted);margin-top:2px}.account-dropdown-item{display:block;width:100%;text-align:left;padding:10px 16px;border:none;border-radius:0;background:none;font-size:13.5px;font-weight:500;color:var(--text)}.account-dropdown-item:hover{background:var(--green-50)}.app-body{display:flex;align-items:flex-start}.sidebar{width:208px;flex-shrink:0;min-height:calc(100vh - 53px);display:flex;flex-direction:column;gap:2px;padding:18px 10px}.sidebar a{padding:9px 14px;font-size:13.5px;font-weight:600;color:var(--muted);text-decoration:none;border-radius:8px;transition:background .15s ease,color .15s ease}.sidebar a:hover{background:var(--surface);color:var(--text)}.sidebar a.active{color:var(--green-800);background:var(--green-100)}main{flex:1;max-width:1200px;margin:0 auto;padding:24px}@media (max-width: 720px){.sidebar{position:absolute;top:53px;left:0;z-index:10;background:var(--bg);border-right:1px solid var(--border);box-shadow:0 8px 24px #262a221f}}.queue-toolbar{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.queue-toolbar input,.queue-toolbar select{padding:8px 12px;font-size:13px;border:1px solid var(--border-strong);border-radius:8px;font-family:inherit;background:var(--surface);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}.queue-toolbar input:focus,.queue-toolbar select:focus{outline:none;border-color:var(--green-600);box-shadow:0 0 0 3px #12873f29}table.job-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-card)}.job-table th,.job-table td{text-align:left;padding:11px 14px;font-size:13.5px;border-bottom:1px solid var(--surface-2)}.job-table th{background:var(--surface-2);font-weight:700;color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.6px}.job-table tr{transition:background .12s ease}.job-table tr:last-child td{border-bottom:none}.job-table tr:hover{background:var(--green-50);cursor:pointer}.job-table tr.cancelled-row{color:var(--muted)}.job-table tr.cancelled-row:hover{background:none;cursor:default}.status-pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11.5px;font-weight:600;text-transform:capitalize}.status-pill.new,.status-pill.pending{background:var(--amber-bg);color:var(--amber-text)}.status-pill.printed{background:var(--green-100);color:var(--green-800)}.status-pill.part-printed{background:#f3ddc0;color:#8a4b17}.status-pill.ready{background:#e3ecd3;color:#4d6b26}.status-pill.part-ready{background:#eef0d5;color:#6b6b1f}.status-pill.dispatched,.status-pill.sent,.status-pill.delivered{background:var(--green-100);color:var(--green-700)}.status-pill.cancelled{background:var(--terracotta-bg);color:var(--terracotta-text)}.detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}@media (max-width: 860px){.detail-layout{grid-template-columns:1fr}}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow-card)}.panel h2{font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);margin:0 0 14px}.panel h3{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--green-800);margin:20px 0 6px}.panel label{display:block;font-weight:600;font-size:12px;margin-top:12px;margin-bottom:4px}.panel label:first-of-type{margin-top:0}.panel input,.panel textarea{width:100%;padding:8px 10px;font-size:13px;border:1px solid var(--border-strong);border-radius:8px;font-family:inherit;background:var(--surface);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}.panel input:focus,.panel textarea:focus{outline:none;border-color:var(--green-600);box-shadow:0 0 0 3px #12873f29}.panel input:disabled,.panel textarea:disabled{background:var(--surface-2);color:var(--muted)}.panel textarea{resize:vertical}.checkbox-row{display:flex;align-items:center;gap:6px;font-weight:400;font-size:12px;margin-top:8px}.checkbox-row input{width:auto}.readonly-fields{font-size:12.5px;line-height:1.7;color:var(--muted)}.readonly-fields strong{color:var(--text)}.action-row{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}button{font-family:inherit;cursor:pointer;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);padding:9px 18px;font-size:13px;font-weight:600;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}button:hover:not(:disabled){background:var(--surface-2);border-color:var(--ink)}button:focus-visible{outline:2px solid var(--green-600);outline-offset:2px}button.primary{background:var(--ink);border-color:var(--ink);color:#fff}button.primary:hover:not(:disabled){background:#000;border-color:#000}button.success{background:var(--green-600);border-color:var(--green-600);color:#fff}button.success:hover:not(:disabled){background:var(--green-700);border-color:var(--green-700)}button:disabled{opacity:.55;cursor:default}.back-link{display:inline-block;margin-bottom:14px;font-size:13px;color:var(--accent);text-decoration:none}.error-banner{background:var(--terracotta-bg);border:1px solid #e6bda9;color:var(--terracotta-text);border-radius:8px;padding:10px 12px;font-size:13px;margin-bottom:14px}.attention-banner{background:var(--amber-bg);border:1px solid #e5cd93;color:var(--amber-text);border-radius:8px;padding:10px 12px;font-size:13px;margin-bottom:14px}.attention-banner p{margin:4px 0 8px}.attention-banner ul{margin:0;padding-left:18px}.attention-banner li{margin-bottom:2px}.attention-link{background:none;border:none;padding:0;color:var(--amber-text);text-decoration:underline;font-size:13px;cursor:pointer}.attention-link:hover{color:#533c0a}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--surface);border-radius:14px;padding:24px;max-width:360px;width:calc(100% - 48px);box-shadow:0 12px 40px #262a2238}.modal p{margin:0 0 4px;font-size:14px}.modal .action-row{margin-top:16px}.shipping-card-modal{max-width:440px}.shipping-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.delivery-target-pill{display:inline-block;padding:3px 9px;border-radius:999px;font-size:11.5px;font-weight:600}.delivery-target-pill.donor{background:var(--plum-bg);color:var(--plum-text)}.delivery-target-pill.recipient{background:var(--green-100);color:var(--green-800)}.delivery-target-pill.unknown{background:var(--surface-2);color:var(--muted)}.delivery-target-pill-lg{display:inline-block;padding:6px 14px;border-radius:999px;font-size:15px;font-weight:700;white-space:nowrap}.delivery-target-pill-lg.donor{background:var(--plum-bg);color:var(--plum-text)}.delivery-target-pill-lg.recipient{background:var(--green-100);color:var(--green-800)}.delivery-target-pill-lg.unknown{background:var(--surface-2);color:var(--muted)}.print-page-frame{background:#fff;border:1px solid var(--border);border-radius:10px}.voucher{--voucher-scale: 1;width:124mm;max-width:100%;min-height:186mm;padding:0;margin:12mm auto;text-align:center;font-family:Adobe Garamond Pro,Garamond,Times New Roman,serif;color:#1c1c1c;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(46px * var(--voucher-scale))}.voucher .qr-block{display:flex;flex-direction:column;align-items:center;gap:8px}.voucher .qr-block .qr-caption{font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:11px;letter-spacing:.3px;color:#999}.voucher .sentence-block{display:flex;flex-direction:column;align-items:center;gap:calc(18px * var(--voucher-scale))}.voucher .sentence-block[hidden]{display:none}.voucher .sentence-block .label{font-size:calc(24px * var(--voucher-scale));margin:0;text-wrap:balance}.voucher .sentence-block .name{font-size:calc(34px * var(--voucher-scale));font-weight:700;margin:0}.voucher .sentence-block .value{font-size:calc(30px * var(--voucher-scale));font-weight:700;margin:0}.voucher .sentence-block .locations{font-size:calc(24px * var(--voucher-scale));font-weight:700;line-height:1.4;margin:0;text-wrap:balance}.voucher .message{font-size:calc(24px * var(--voucher-scale));font-style:italic;line-height:1.5;white-space:pre-wrap;max-width:700px;margin:0;text-wrap:balance}@page{size:A5 portrait;margin:0}@media print{body{padding:0;background:#fff}.app-header,.sidebar,.print-toolbar,.back-link,.print-hide{display:none!important}main{max-width:none;padding:0;margin:0}.detail-layout{display:block}.print-page-frame{border:none;border-radius:0;padding:0;box-shadow:none}.voucher{height:186mm;page-break-after:avoid}.batch-job-print .voucher:not(:last-child){page-break-after:always;break-after:page}}
