/* MIDIDISK's original paper / ink identity, applied to the public listening shop. */
.mididisk-library{--paper:#e9e6dd;--paper2:#edeae2;--ink:#1b1a16;--ink2:#6b685c;--hair:rgba(27,26,22,.18);--accent:#df4a1c;--mono:'IBM Plex Mono',ui-monospace,Menlo,monospace;background:var(--paper);color:var(--ink);font-family:var(--mono)}
.mididisk-library[data-disc-theme=ink]{--paper:#161511;--paper2:#1b1a15;--ink:#e7e3d7;--ink2:#94907f;--hair:rgba(231,227,215,.24);--accent:#ff5c28;color-scheme:dark}
.mididisk-library *{box-sizing:border-box}
.mididisk-library main{max-width:1000px;padding:18px}
.mididisk-library header{border-bottom:1px solid var(--ink);padding-bottom:14px}
.mididisk-library a{color:var(--ink)}
.mididisk-library .logo{font:600 16px var(--mono);letter-spacing:.12em;text-transform:uppercase}
.mididisk-library nav{font-size:12px}
.mididisk-library h1,.mididisk-library h2,.mididisk-library h3{font-family:var(--mono);font-weight:500}
.mididisk-library .immersive{background:var(--paper);min-height:calc(100svh - 75px);padding:130px 0 150px;margin-top:0}
.mididisk-library .disc-canvas{border-radius:0;width:min(100%,calc(100svh - 270px),740px)}
.mididisk-library .track-info{left:0;right:0;top:22px}
.mididisk-library .track-info h1{font-size:clamp(18px,3vw,26px);letter-spacing:0;max-width:650px}
.mididisk-library .track-info #artist,.mididisk-library .track-info #duration,.mididisk-library #time{color:var(--ink2);font-family:var(--mono)}
.mididisk-library button,.mididisk-library select{background:transparent;color:var(--ink);border:1px solid var(--hair);border-radius:2px;font:500 11px var(--mono);letter-spacing:.06em;padding:10px 14px}
.mididisk-library button:hover{background:rgba(128,128,128,.12)}
.mididisk-library .playround{border:1px solid var(--accent);color:var(--accent);border-radius:2px;width:64px;height:45px;font-size:20px}
.mididisk-library .playcontrols{bottom:18px;gap:10px}
.mididisk-library .disc-invert{position:absolute;bottom:118px;left:0}
.mididisk-library .on-disc-details{top:auto;bottom:118px;right:0;background:var(--paper)!important;color:var(--ink)!important;border-radius:2px}
.mididisk-library .seek{accent-color:var(--accent)}
.mididisk-library #details,.mididisk-library .product,.mididisk-library .basket{border-top:1px solid var(--hair);padding-top:24px}
.mididisk-library .player audio{display:block;width:100%;margin:20px 0}
.mididisk-library .notice{color:var(--ink2);border-color:var(--accent)}
.mididisk-library .catalog-card,.mididisk-library .basket,.mididisk-library .product,.mididisk-library .mock{background:var(--paper2);color:var(--ink);border-radius:2px;box-shadow:none}
.mididisk-library .disc-search{background:transparent;color:var(--ink);border:1px solid var(--hair);border-radius:2px;font:13px var(--mono)}
.mididisk-library .shirt[data-color=ink]{background:#24231f}
.mididisk-library .shirt[data-color=paper]{background:#f3f0e6}
.mididisk-library dialog{background:var(--paper);color:var(--ink);border:1px solid var(--hair);border-radius:2px}
@media(max-width:600px){.mididisk-library nav{gap:10px}.mididisk-library .track-info h1{font-size:18px;max-width:245px}.mididisk-library .track-info>a{font-size:10px}.mididisk-library .disc-canvas{width:min(100%,calc(100svh - 290px))}}
/* The creator keeps the same original palette selected by its existing invert control. */
body.creator-generator{background:var(--paper)!important;color:var(--ink)!important}
.creator-generator .wrap{background:transparent;border-radius:0;padding:0}
.creator-generator header,.creator-generator .meta,.creator-generator .foot,.creator-generator table{color:var(--ink)}
.creator-generator button,.creator-generator select,.creator-generator label{background:transparent;color:var(--ink)}
.creator-generator dialog{background:var(--paper);color:var(--ink);border:1px solid var(--hair);border-radius:2px}

.mididisk-library .mug[data-color=paper]{background:#f3f0e6;color:#f3f0e6}
.mididisk-library .mug[data-color=ink]{background:#24231f;color:#24231f}
.mididisk-library .mug:after{border-color:currentColor}
.mididisk-library .merchart{border-radius:0}
/* Override the old store shell explicitly: the original body.store rules were
   winning over the MIDIDISK theme and leaving pale text on dark panels. */
body.store.mididisk-library{background:var(--paper);color:var(--ink);font:400 12px var(--mono)}
.store.mididisk-library main{max-width:920px;margin:0 auto;padding:26px 16px 44px}
.store.mididisk-library header{margin-bottom:14px;padding-bottom:10px}
.store.mididisk-library p{color:var(--ink2);line-height:1.6}
.store.mididisk-library .logo{font:600 15px var(--mono);letter-spacing:.18em}
.store.mididisk-library h1{font:500 20px var(--mono);letter-spacing:.015em;line-height:1.3;margin:8px 0}
.store.mididisk-library h2{font:500 13px var(--mono);letter-spacing:.08em;margin:0 0 16px;padding-bottom:10px;border-bottom:1px solid var(--ink)}
.store.mididisk-library h3{font:500 12px var(--mono);letter-spacing:.04em}
.store.mididisk-library button,.store.mididisk-library button.secondary,.store.mididisk-library select,.store.mididisk-library .action,.store.mididisk-library nav a,.store.mididisk-library .track-info>a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;background:var(--paper2);color:var(--ink);border:1px solid var(--ink2);border-radius:2px;font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;cursor:pointer;box-shadow:none}
.store.mididisk-library button:hover,.store.mididisk-library nav a:hover,.store.mididisk-library .track-info>a:hover{background:var(--ink);color:var(--paper)}
.store.mididisk-library button:active{transform:translateY(1px)}
.store.mididisk-library button:disabled{opacity:.4;cursor:default}
.store.mididisk-library button:focus-visible,.store.mididisk-library a:focus-visible,.store.mididisk-library input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.store.mididisk-library .immersive{display:flex;flex-direction:column;align-items:stretch;gap:14px;min-height:calc(100svh - 95px);padding:0;margin:0;overflow:visible;background:var(--paper)}
.store.mididisk-library .track-info{position:static;align-items:center;gap:15px}
.store.mididisk-library .disc-canvas{display:block;width:min(100%,calc(100svh - 270px),740px);height:auto;align-self:center;border:1px solid var(--hair);background:var(--paper2)}
.store.mididisk-library .disc-invert,.store.mididisk-library .on-disc-details{position:static;align-self:flex-start;font-size:11px!important;background:var(--paper2)!important;color:var(--ink)!important;border:1px solid var(--ink2);min-height:44px}
.store.mididisk-library .disc-tools{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.store.mididisk-library .playcontrols{position:static;display:grid;grid-template-columns:auto minmax(60px,1fr) auto;align-items:center;gap:14px;padding-bottom:16px}
.store.mididisk-library .playround{width:auto;min-width:100px;height:44px;border:1px solid var(--accent);color:var(--accent);font:500 11px var(--mono)}
.store.mididisk-library .seek{width:100%;margin:0;accent-color:var(--accent)}
.store.mididisk-library #time{font:11px var(--mono);white-space:nowrap}
.store.mididisk-library .catalog-card,.store.mididisk-library .product,.store.mididisk-library .basket{border:1px solid var(--hair);border-radius:2px;padding:16px;background:var(--paper2)}
.store.mididisk-library .catalog-card h2{border:0;font-size:15px;padding:0}
.store.mididisk-library .notice{border-left:1px solid var(--accent)}
.store.mididisk-library nav{gap:8px}
@media(max-width:600px){.store.mididisk-library main{padding-top:18px}.store.mididisk-library nav a{font-size:9px;padding:8px;min-height:36px}.store.mididisk-library .logo{font-size:12px;letter-spacing:.08em}.store.mididisk-library .track-info>a{font-size:9px;padding:8px;min-height:36px}.store.mididisk-library .track-info h1{font-size:17px;max-width:230px}.store.mididisk-library .disc-canvas{width:100%}.store.mididisk-library .playcontrols{grid-template-columns:auto 1fr;gap:10px}.store.mididisk-library #time{grid-column:2;text-align:right}.store.mididisk-library .immersive{min-height:0}}
.store.mididisk-library .mock>.shirt,.store.mididisk-library .mock>.mug{display:none}
.store.mididisk-library .mock{height:auto}
.store.mididisk-library .merchmock{display:block;width:100%;height:auto}
.store.mididisk-library .renderchoice{display:flex;gap:0}
.store.mididisk-library .renderchoice button[aria-pressed=true]{background:var(--ink);color:var(--paper)}

/* Shop remains light; only the actual printing support follows inversion. */
.store.mididisk-library #shop{--paper:#e9e6dd;--paper2:#edeae2;--ink:#1b1a16;--ink2:#6b685c;--hair:rgba(27,26,22,.18);--accent:#df4a1c;color-scheme:light;background:var(--paper);color:var(--ink);padding:24px 16px;margin-inline:-16px}
