.music-receipt-page{max-width:1440px;margin:0 auto;padding:56px 42px 80px;background:#09090a;color:#f3f0e8}.receipt-page-head{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:end;gap:32px;margin-bottom:34px;padding-bottom:28px;border-bottom:1px solid #34343a}.receipt-page-head .receipt-kicker{grid-column:1/-1;margin:0;color:#c9f500;font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.receipt-page-head h2{margin:0;font:400 clamp(4rem,8vw,8.5rem)/.78 'Instrument Serif',Georgia,serif;letter-spacing:-.055em}.receipt-page-head>p:last-child{max-width:520px;margin:0;color:#aaa8a2;font-size:1rem;line-height:1.6}.receipt-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:1px;background:#34343a;border:1px solid #34343a}.receipt-controls,.receipt-output{background:#111113;padding:28px}.receipt-fieldset{margin:0 0 26px;padding:0;border:0}.receipt-fieldset legend{margin-bottom:12px;color:#f3f0e8;font-size:.875rem;font-weight:800}.source-picker{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.source-option{min-height:76px;padding:12px;border:1px solid #45454c;background:#18181b;color:#f3f0e8;text-align:left;cursor:pointer}.source-option strong,.source-option span{display:block}.source-option strong{font-size:.8rem}.source-option span{margin-top:6px;color:#92918c;font-size:.7rem;line-height:1.35}.source-option:hover,.source-option:focus-visible,.source-option.is-selected{border-color:#c9f500;background:#202319;outline:0}.source-option.is-selected strong{color:#c9f500}.range-picker{display:flex;gap:0;border:1px solid #45454c;width:max-content;max-width:100%}.range-picker button{padding:10px 16px;border:0;border-right:1px solid #45454c;background:#18181b;color:#aaa8a2;font-size:.78rem;font-weight:700;cursor:pointer}.range-picker button:last-child{border-right:0}.range-picker button.is-selected{background:#c9f500;color:#08090a}.connect-panel{margin-bottom:20px;padding:16px;border-left:3px solid #5a8ee8;background:#171719;color:#c9c8c4;font-size:.84rem;line-height:1.55}.connect-panel p{margin:0 0 12px}.connect-panel p:last-child{margin-bottom:0}.connect-panel label,.manual-panel label{display:block;margin:12px 0 7px;color:#d7d5cf;font-size:.78rem;font-weight:700}.connect-panel input,.manual-panel input,.manual-panel textarea,.receipt-import textarea{width:100%;border:1px solid #494950;background:#0d0d0f;color:#f3f0e8;padding:11px 12px;font:inherit}.connect-panel input:focus,.manual-panel input:focus,.manual-panel textarea:focus,.receipt-import textarea:focus{border-color:#c9f500;outline:2px solid rgba(201,245,0,.18)}.connect-action,.receipt-primary,.receipt-secondary,.receipt-actions button,.file-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #c9f500;background:#c9f500;color:#08090a;padding:11px 15px;font-size:.76rem;font-weight:850;letter-spacing:.055em;text-transform:uppercase;cursor:pointer}.connect-action[disabled],.receipt-actions button[disabled]{opacity:.42;cursor:not-allowed}.receipt-secondary,.receipt-actions button,.file-button{background:transparent;color:#f3f0e8;border-color:#55555d}.manual-panel{margin-bottom:20px;padding:18px;border:1px solid #34343a;background:#0d0d0f}.manual-heading{display:flex;align-items:end;justify-content:space-between;gap:16px}.manual-heading span{color:#c9f500;font-size:.66rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.manual-heading h3{margin:3px 0 0;font:400 2rem/1 'Instrument Serif',Georgia,serif}.manual-heading>strong{color:#c9f500;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.manual-panel label span{color:#85847f;font-weight:500}.receipt-search-results{display:grid;max-height:180px;overflow:auto;border:1px solid #34343a;border-top:0}.receipt-search-results:empty{display:none}.receipt-search-results button{padding:9px 11px;border:0;border-bottom:1px solid #2d2d31;background:#151517;color:#f3f0e8;text-align:left;cursor:pointer}.receipt-search-results button:hover,.receipt-search-results button:focus-visible{background:#c9f500;color:#08090a}.selected-artists{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.artist-token{display:flex;align-items:center;gap:8px;border:1px solid #4b4b50;padding:7px 9px;color:#d7d5cf;font-size:.73rem}.artist-token button{border:0;background:transparent;color:#c9f500;cursor:pointer}.receipt-import{margin:0 0 20px;border:1px solid #34343a;padding:14px}.receipt-import summary{cursor:pointer;color:#d7d5cf;font-size:.8rem;font-weight:800}.receipt-import p{color:#898883;font-size:.75rem}.receipt-import input[type=file]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.receipt-import textarea{display:block;margin:12px 0}.receipt-status{min-height:44px;margin:0 0 12px;padding:11px 13px;background:#18181b;color:#aaa8a2;font-size:.78rem;line-height:1.45}.receipt-status.is-error{border-left:3px solid #ff6b59;color:#ffd5cf}.receipt-status.is-success{border-left:3px solid #c9f500;color:#eaf8ad}.receipt-primary{width:100%;min-height:48px}.receipt-privacy{margin:12px 0 0;color:#777671;font-size:.7rem;line-height:1.5}.receipt-output{display:flex;min-width:0;flex-direction:column;align-items:center}.receipt-preview-shell{width:min(100%,430px);min-height:610px;padding:18px;background:#242426;box-shadow:inset 0 0 0 1px #3e3e44}.receipt-preview-shell canvas{display:block;width:100%;height:auto;background:#f5f0df;filter:drop-shadow(0 16px 22px rgba(0,0,0,.3))}.receipt-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;width:min(100%,430px);margin-top:16px}.receipt-actions button{min-height:42px}.receipt-actions button:not([disabled]):hover{border-color:#c9f500;color:#c9f500}.receipt-output>p{margin:14px 0 0;color:#85847f;font-size:.73rem;text-align:center}.receipt-source-note{color:#777671;font-size:.7rem}.receipt-source-note a{color:#c9f500}@media(max-width:1000px){.receipt-page-head{grid-template-columns:1fr}.receipt-page-head .receipt-kicker{grid-column:auto}.receipt-workspace{grid-template-columns:1fr}.source-picker{grid-template-columns:repeat(3,1fr)}}@media(max-width:640px){.music-receipt-page{padding:36px 16px 60px}.receipt-page-head h2{font-size:4.5rem}.receipt-controls,.receipt-output{padding:18px}.source-picker{grid-template-columns:1fr 1fr}.source-option{min-height:68px}.range-picker{width:100%}.range-picker button{flex:1;padding:10px 7px}.receipt-preview-shell{min-height:0;padding:10px}.receipt-actions{grid-template-columns:1fr 1fr}}
/* Music Receipt v2: palette controls and database-backed discovery. */
.music-receipt-page .source-picker{grid-template-columns:repeat(3,minmax(0,1fr))}
.receipt-theme-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.receipt-theme-picker button{min-height:84px;padding:14px;text-align:left;border:2px solid transparent;font-size:14px;font-weight:750;cursor:pointer;position:relative}
.receipt-theme-picker button span{display:block;margin-top:7px;font-size:13px;font-weight:400}
.receipt-theme-picker [data-receipt-theme=classic]{background:#F5F0E1;color:#2C2A22}
.receipt-theme-picker [data-receipt-theme=amapiano]{background:#1C1C1A;color:#D7F04A;box-shadow:inset 0 0 0 1px #4A4940}
.receipt-theme-picker [data-receipt-theme=owambe]{background:#3B2A0F;color:#EFCB7A;box-shadow:inset 0 0 0 1px #C9962F}
.receipt-theme-picker [data-receipt-theme=mono]{background:#FAFAF8;color:#333}
.receipt-theme-picker button.is-selected{outline:2px solid #c9f500;outline-offset:2px}
.receipt-theme-picker button.is-selected:after{content:'✓';position:absolute;right:9px;top:8px}
.receipt-theme-picker button:focus-visible{outline:3px solid white;outline-offset:3px}
.receipt-discovery{width:min(100%,430px);margin-top:28px;border-top:1px solid #45454c;padding-top:22px}
.receipt-discovery h3{font-size:23px;color:#f3f0e8;margin:0}
.receipt-discovery p{font-size:14px;color:#aaa8a2;line-height:1.5}
.receipt-discovery a{display:block;text-decoration:none;border-bottom:1px solid #34343a;padding:15px 0;color:#f3f0e8}
.receipt-discovery a strong{font-size:16px;display:block}
.receipt-discovery a span{display:block;font-size:14px;color:#aaa8a2;margin-top:6px}
.receipt-discovery a:hover strong{color:#c9f500}
.receipt-discovery a:focus-visible{outline:2px solid #c9f500;outline-offset:4px}
@media(max-width:400px){.music-receipt-page .source-picker{grid-template-columns:1fr}.receipt-theme-picker{grid-template-columns:1fr}}
