/* The IJskoud background ("Zwarte Diamant" theme): the safe as black ceramic, polished
   platinum, ice-white light and diamond rivets, with the cards, panels and dialogs around it
   in the same materials. Applied while body[data-background="diamond"]. On the safe it
   restyles the same parts as the shared gold door and deliberately outranks it.
   Red, green and amber keep their meaning. */

/* ---- the scene and its shop card, shown whichever background is active ---- */
/* The platinum vault has its own photograph; without WebGL it gets the gold room's slow camera
   and drifting air, lit cold. */
.lab-scenery[data-scene="diamond"] .lab-scene-image{filter:brightness(1.02)}
.lab-scenery[data-scene="diamond"] .lab-scene-visual{animation:lab-gold-camera 48s ease-in-out infinite alternate; transform-origin:50% 52%}
.lab-modal-open .lab-scenery[data-scene="diamond"] .lab-scene-visual{animation-play-state:paused!important}
.lab-scenery[data-scene="diamond"] .lab-scene-gold{display:block}
.lab-scenery[data-scene="diamond"] .lab-gold-ambient{background:radial-gradient(ellipse at 25% 25%,#eef6ff20,#a9cdf009 36%,transparent 69%)}
.lab-scenery[data-scene="diamond"] .lab-gold-beam{background:radial-gradient(ellipse 9% 44% at 50% 46%,#f4f9ff24,#d6e9ff16 48%,transparent 100%),radial-gradient(ellipse 36% 48% at 50% 46%,#dcecff2c,#a9cbef17 52%,transparent 100%)}
.lab-scenery[data-scene="diamond"] .lab-gold-dust{background:radial-gradient(circle,#f8fcff 0 22%,#d2e7ffdb 38%,transparent 73%); box-shadow:0 0 6px #bfe0ff59}
.lab-scenery[data-scene="diamond"] .lab-gold-bokeh{background:radial-gradient(circle,#f1f7ffb3,#c4dcf566 24%,#aecbec18 48%,transparent 70%)}
@media (max-width:600px){
  .lab-scenery[data-scene="diamond"] .lab-scene-image{background-position:4% center}
  .lab-scenery[data-scene="diamond"] .lab-scene-visual{animation:none; transform:none}
}
#mLoot .lab-scene-card[data-scene="diamond"]{position:relative; isolation:isolate; border-color:#8f98a2;
  background:radial-gradient(ellipse at 0 50%, rgba(190,225,255,.12), transparent 42%), linear-gradient(155deg,#25292f,#191c20 68%,#141619);
  box-shadow:inset 0 1px 0 rgba(236,243,250,.14), 0 4px 10px #0005}
#mLoot .lab-scene-card[data-scene="diamond"].selected{border-color:#dfe6ec; box-shadow:inset 3px 0 0 #dfe6ec, inset 0 1px 0 rgba(236,243,250,.16), 0 4px 10px #0005}
#mLoot .lab-scene-card[data-scene="diamond"] .lab-scene-art{border-color:#aeb7c1; box-shadow:0 2px 5px #0008, 0 0 12px rgba(190,225,255,.16)}
#mLoot .lab-scene-card[data-scene="diamond"] .sh-gold-glint{background:radial-gradient(circle,#f4f9ff,transparent 66%)}
#mLoot .lab-scene-card[data-scene="diamond"] .sh-gold-glint::before,#mLoot .lab-scene-card[data-scene="diamond"] .sh-gold-glint::after{background:linear-gradient(90deg,transparent,#f2f8ff,transparent)}
#mLoot .lab-scene-card[data-scene="diamond"] .sh-gold-particle{background:#eaf4ff; box-shadow:0 0 4px rgba(190,225,255,.6)}

/* ---- shared tokens: neutral greys and borders turn graphite; meaning colours stay ---- */
body[data-background="diamond"]{
  --bg0:#07080a; --bg1:#0c0e11;
  --panel:#1a1d22; --panel2:#121418; --well:#08090b;
  --line:#2a2f36; --line2:#3b414a; --line3:#5a626d;
  --ink:#eef2f6; --dim:#a3acb6; --faint:#6f7883;
  --glow:rgba(170,215,255,.18); --steel:#9fc2ea;
}

/* ---- header: the wordmark and its dial in platinum ---- */
body[data-background="diamond"] .brand h1{background-image:linear-gradient(180deg,#fff 8%,#dbe3ea 46%,#9ba7b3 78%,#6c7682)}
body[data-background="diamond"] .brand h1::after{background-image:linear-gradient(105deg,transparent 42%,rgba(235,246,255,.95) 50%,transparent 58%)}
body[data-background="diamond"] .brand-mark{filter:grayscale(1) brightness(1.18) contrast(1.06) drop-shadow(0 5px 10px rgba(0,0,0,.55))}
body[data-background="diamond"] .brand .sub{color:#9aa5b1}
body[data-background="diamond"] button:focus-visible{outline-color:#cfe6ff}
body[data-background="diamond"] .slot.dial-editable:focus-visible{outline-color:rgba(207,230,255,.6)}
body[data-background="diamond"] :where(.streak-chip,.toolbar,.icon-btn,.lang-switch){
  background:linear-gradient(180deg,#1f2328,#14171b); box-shadow:0 3px 8px rgba(0,0,0,.35), inset 0 1px 0 rgba(236,243,250,.09)}
body[data-background="diamond"] :is(.icon-btn,#lvlChip):hover{color:#e6f4ff; border-color:#7f8b97}
body[data-background="diamond"] .toolbar .icon-btn:hover{background:rgba(170,215,255,.1); color:#e6f4ff}
body[data-background="diamond"] :is(.toolbar .icon-btn.active,.icon-btn.active,.icon-btn.logged){background:rgba(170,215,255,.14); color:#f4faff; border-color:#7f8b97}
body[data-background="diamond"] .meta-line .pill{border-color:#6f7883; color:#e6f4ff;
  background:linear-gradient(180deg, rgba(200,225,255,.12), rgba(200,225,255,.03))}
body[data-background="diamond"] .panel-label::before{color:#d6ecff; text-shadow:0 0 6px rgba(170,215,255,.6)}

/* ---- today's loot ---- */
body[data-background="diamond"] .loot-banner{border-color:var(--line2); border-left-color:#dfe6ec;
  background:linear-gradient(112deg, rgba(200,225,255,.08), rgba(24,27,32,.95) 31%, rgba(12,14,17,.93));
  box-shadow:inset 0 1px 0 rgba(236,243,250,.07), 0 14px 28px -24px #000}
body[data-background="diamond"] .loot-title{color:#f1f5f9}
body[data-background="diamond"] .loot-story{color:#c3ccd6}
body[data-background="diamond"] .loot-banner.is-special{border-color:#8f98a2; border-left-color:#f4f8fb; animation-name:diamond-aura;
  background:radial-gradient(circle at 10% 45%, rgba(190,225,255,.16), transparent 27%),
    linear-gradient(112deg, rgba(150,180,215,.18), rgba(24,27,32,.96) 39%, rgba(12,14,17,.94))}
body[data-background="diamond"] .loot-banner.is-special::before{
  background:linear-gradient(112deg, transparent 40%, rgba(214,236,255,.2) 49%, rgba(255,255,255,.3) 50%, rgba(214,236,255,.14) 52%, transparent 61%)}
body[data-background="diamond"] .loot-banner.is-special .loot-title{color:#f4f8fb; text-shadow:0 0 20px rgba(170,215,255,.22)}
body[data-background="diamond"] .loot-banner.is-special .loot-status{color:#c7d6e5}
body[data-background="diamond"] .loot-banner.legendary{border-color:#dfe6ec}
body[data-background="diamond"] .loot-glyph{filter:drop-shadow(0 7px 11px rgba(0,0,0,.6)) drop-shadow(0 0 12px rgba(190,225,255,.35))}
body[data-background="diamond"] .loot-glyph::before{background:radial-gradient(circle, rgba(214,236,255,.26), rgba(170,215,255,.1) 44%, transparent 72%)}
@keyframes diamond-aura{
  0%,100%{box-shadow:inset 0 0 16px rgba(170,215,255,.06), inset 0 1px 0 rgba(255,255,255,.06), 0 12px 25px -20px #000, 0 0 7px rgba(170,215,255,.07)}
  50%{box-shadow:inset 0 0 27px rgba(170,215,255,.13), inset 0 1px 0 rgba(255,255,255,.09), 0 14px 30px -20px #000, 0 0 11px rgba(170,215,255,.12)}}

/* ---- hint and probe cards: graphite with a polished top edge, black-glass digits ---- */
body[data-background="diamond"] .clue{border-color:var(--line); border-top-color:#3c434c;
  background:linear-gradient(180deg,#1d2126,#15181c 70%,#121417);
  box-shadow:0 8px 20px -12px rgba(0,0,0,.75), inset 0 1px 0 rgba(236,243,250,.06)}
body[data-background="diamond"] .clue:hover{border-color:var(--line3)}
body[data-background="diamond"] .card-tag{color:#cfe2f5; border-color:var(--line2)}
body[data-background="diamond"] .dchip{background:linear-gradient(180deg,#07090b,#0c0e11); border-color:#272c33;
  color:#eef8ff; text-shadow:0 0 10px rgba(160,215,255,.35)}
body[data-background="diamond"] .fbc{box-shadow:inset 0 1px 0 rgba(255,255,255,.07)}

/* ---- the start card ---- */
body[data-background="diamond"] .lab-brief{border-color:var(--line2);
  background:radial-gradient(ellipse at top, rgba(190,225,255,.06), transparent 75%), linear-gradient(180deg,#1c2025,#0e1013)}
body[data-background="diamond"] .lab-brief h3{color:#f1f5f9; text-shadow:0 0 22px rgba(170,215,255,.18)}

/* ---- buttons: the main action is polished platinum, like the crack key ---- */
body[data-background="diamond"] .btn{background:linear-gradient(180deg,#2a2f36,#1a1d22)}
body[data-background="diamond"] .btn.primary{color:#0c0f13; border-color:#c9d0d8;
  background:linear-gradient(180deg,#ffffff,#dfe5eb 46%,#a9b1ba);
  box-shadow:0 4px 0 #4a5058, 0 8px 22px rgba(170,215,255,.2), inset 0 1px 0 rgba(255,255,255,.9)}
body[data-background="diamond"] .btn.primary:active{box-shadow:0 1px 0 #4a5058, inset 0 2px 5px rgba(0,0,0,.18)}
body[data-background="diamond"] .btn.primary::after{background:linear-gradient(105deg, transparent, rgba(255,255,255,.75), transparent)}
body[data-background="diamond"] .btn.ghost{background:transparent}

/* ---- dialogs: graphite sheets; their cards follow without touching special states ---- */
body[data-background="diamond"] .sheet{border-color:#4a515a; border-top-color:#8c959f;
  background:radial-gradient(120% 60% at 50% -8%, rgba(170,200,235,.08), transparent 55%), linear-gradient(180deg,#1f2328,#131619);
  box-shadow:0 50px 110px -22px rgba(0,0,0,.95), inset 0 1px 0 rgba(236,243,250,.12)}
body[data-background="diamond"] .sheet::before{border-color:rgba(214,224,234,.08)}
body[data-background="diamond"] .sheet h2{color:#f1f5f9; text-shadow:0 0 22px rgba(170,215,255,.22)}
body[data-background="diamond"] :where(.stat-cell,.stash-item,.sell-row,.inv-slot,.lb-row,.lb-page,.wb-lock,.tool-card,.loot-sum .ls-box,.ach,.card-tag){
  background:linear-gradient(180deg,#1b1f24,#121519)}
body[data-background="diamond"] :is(.sh-tabs,.sh-subtabs){--sh-highlight:linear-gradient(180deg,#2c3138,#1c1f24); --sh-highlight-border:#8c959f; --sh-highlight-text:#f1f5f9}
body[data-background="diamond"] .sh-subtabs{--sh-highlight:linear-gradient(180deg,#ffffff,#dfe5eb 46%,#a9b1ba); --sh-highlight-border:#c9d0d8; --sh-highlight-text:#0c0f13}

/* ---- result: loot cards, level card and badge in platinum instead of brass ---- */
body[data-background="diamond"] .loot-card{background:linear-gradient(120deg,#1e2227,#15181c)}
body[data-background="diamond"] .loot-card.got{border-color:#8f98a2;
  background:linear-gradient(120deg, rgba(200,225,255,.1), rgba(200,225,255,.02));
  box-shadow:0 0 30px rgba(170,215,255,.08), inset 0 1px 0 rgba(236,243,250,.1)}
body[data-background="diamond"] .loot-card.got::after{background:linear-gradient(105deg, transparent, rgba(220,238,255,.14), transparent)}
body[data-background="diamond"] .loot-card .ln{color:#f1f5f9}
body[data-background="diamond"] .loot-card .le-img{filter:drop-shadow(0 5px 9px rgba(0,0,0,.6)) drop-shadow(0 0 10px rgba(190,225,255,.2))}
body[data-background="diamond"] .gold-haul .haul-head .lk{color:#e6f0f8}
body[data-background="diamond"] .lvl-card{background:linear-gradient(120deg,#1e2227,#15181c)}
body[data-background="diamond"] .lvl-badge{color:#0c0f13;
  background:linear-gradient(180deg,#ffffff,#dfe5eb 55%,#a9b1ba); box-shadow:0 3px 8px rgba(0,0,0,.4), inset 0 1px 0 rgba(255,255,255,.8)}
body[data-background="diamond"] .lvl-bar i{background:linear-gradient(90deg,#6f7883,#e6eef5)}
body[data-background="diamond"] .res-next b{color:#e6f4ff}

/* ---- rewards: the level-up and medal block, medal notices and their tooltips ---- */
body[data-background="diamond"] .reward-summary{border-color:#59616c;
  background:linear-gradient(115deg,#22262c,#15181c 70%); box-shadow:inset 0 1px 0 rgba(236,243,250,.08)}
body[data-background="diamond"] .ach-new{border-color:#6f7883; border-left-color:#e6edf3;
  background:radial-gradient(ellipse at 0 50%, rgba(200,225,255,.1), transparent 66%), linear-gradient(115deg,#24282e,#16191d 68%,#121417);
  box-shadow:inset 0 1px 0 rgba(236,243,250,.1), 0 7px 18px #0004}
body[data-background="diamond"] :is(.reward-emblem,.reward-summary .reward-level-badge){border-color:rgba(214,224,234,.35);
  background:radial-gradient(circle at 45% 30%, rgba(200,225,255,.22), #0e1013 72%)}
body[data-background="diamond"] :is(.reward-level-badge,.reward-seal){color:#f1f5f9}
body[data-background="diamond"] :is(.reward-label,.ach-new .ank){color:#b9c6d3}
body[data-background="diamond"] :is(.reward-title,.ach-new .ann){color:#f1f5f9}
body[data-background="diamond"] .reward-medal{border-color:rgba(214,224,234,.18); background:rgba(10,12,15,.6)}
body[data-background="diamond"] .reward-medal[tabindex]:is(:hover,:focus){border-color:#8c959f; background:#1c1f24}
body[data-background="diamond"] .reward-medal[tabindex]:focus-visible{outline-color:#cfe6ff}
body[data-background="diamond"] .reward-tip,body[data-background="diamond"] .reward-tip::after{border-color:#4a515a; background:#0e1013}

/* ---- tutorial, statistics strip and debrief, as in the gold background's own theme ---- */
body[data-background="diamond"] :is(.lab-coach-card,.lab-stats-strip>div,.lab-debrief-digits span,.lab-local){background:linear-gradient(180deg,#1e2227,#121418)}
body[data-background="diamond"] .lab-coach-code span{background:linear-gradient(180deg,#0c0e11,#060708); border-color:var(--line2); color:#eef8ff}
body[data-background="diamond"] .lab-coach-choices button:where(:not(.selected)){background:linear-gradient(180deg,#2d3239,#1a1d22); border-color:var(--line2); color:#e6f4ff; box-shadow:0 3px 0 #07080a, inset 0 1px 0 rgba(255,255,255,.05)}
body[data-background="diamond"] .lab-coach-choices button.selected{background:#0a0b0d; color:#6f7883}
body[data-background="diamond"] .lab-coach-choices button:hover{border-color:#8c959f}
body[data-background="diamond"] :is(.lab-eyebrow,.lab-stats-strip b){color:#d6ecff}
body[data-background="diamond"] .lab-coach-status{color:#d6ecff!important}
body[data-background="diamond"] .lab-coach-dialog .lab-coach-status{color:inherit!important}
body[data-background="diamond"] .lab-dialog .sheet h2{color:#f1f5f9}
body[data-background="diamond"] .lab-coach-step i{background:#2a2f36}
body[data-background="diamond"] .lab-coach-step i.done{background:#dfe6ec}
body[data-background="diamond"] .lab-coach-progress .current{color:#e6f4ff; border-color:#8c959f}
body[data-background="diamond"] .lab-coach-progress .current .lab-coach-number{border-color:#6f7883; color:#e6f4ff;
  background:linear-gradient(155deg,#2c3138,#16191d); box-shadow:inset 0 1px 0 rgba(236,243,250,.15), 0 0 12px rgba(170,215,255,.08)}
body[data-background="diamond"] .lab-coach-dialog .lab-coach-card .dchip.lab-coach-tap:not(.marked):not(.confirmed){border-color:#6f7883;
  box-shadow:inset 0 1px 0 rgba(236,243,250,.12), 0 0 0 1px rgba(170,215,255,.08)}
@media(hover:hover) and (pointer:fine){
  body[data-background="diamond"] .lab-coach-dialog .lab-coach-card .dchip.lab-coach-tap:not(.marked):not(.confirmed):hover{border-color:#c9d0d8; color:#f4faff}
}
body[data-background="diamond"] .lab-coach-dialog :is(.lab-coach-choices button,.lab-coach-card .dchip.lab-coach-tap):focus-visible{outline-color:#cfe6ff}
body[data-background="diamond"] .lab-coach-dialog .lab-coach-code .current{border-color:#a8cdee}
body[data-background="diamond"] .lab-coach-preview{background:radial-gradient(ellipse at 50% 100%, rgba(170,215,255,.05), transparent 72%), var(--well)}

/* ---- the safehouse: its boxes, slots, tabs and atmosphere cards; gold trophies stay gold ---- */
body[data-background="diamond"] #mLoot :is(.inv-slot,.tool-card,.wb-lock,.lvl-card):where(:not(.empty):not(.special)),
body[data-background="diamond"] #mLoot .loot-sum .ls-box{background:linear-gradient(180deg,#1e2227,#131619); border-color:var(--line2)}
body[data-background="diamond"] #mLoot .inv-slot.empty{background:rgba(18,20,24,.85); border-color:#3b414a}
body[data-background="diamond"] #mLoot :is(.lab-scene-card,.sh-music-card):where(:not([data-scene="gold"]):not([data-scene="diamond"])){background:linear-gradient(155deg,#24282e,#181b1f 65%,#141619)}
/* the same staggered brick wall, cut from graphite and lit cool from above */
body[data-background="diamond"] #mLoot .sheet{border-color:#3f454d; border-top-color:#7d8690;
  background:
    radial-gradient(120% 70% at 50% -10%, rgba(190,220,255,.12), transparent 55%),
    linear-gradient(180deg, rgba(0,0,0,0) 26%, rgba(0,0,0,.34) 78%, rgba(0,0,0,.52) 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='56'%3E%3Crect width='96' height='56' fill='%230a0b0d'/%3E%3Cg%3E%3Crect x='0' y='0' width='44' height='24' rx='1.5' fill='%231d2025'/%3E%3Crect x='48' y='0' width='44' height='24' rx='1.5' fill='%231a1d21'/%3E%3Crect x='-24' y='28' width='44' height='24' rx='1.5' fill='%231c1f23'/%3E%3Crect x='24' y='28' width='44' height='24' rx='1.5' fill='%2320232a'/%3E%3Crect x='72' y='28' width='44' height='24' rx='1.5' fill='%23191b1f'/%3E%3C/g%3E%3Cg fill='rgba(220,235,255,.05)'%3E%3Crect x='2' y='1' width='40' height='1.5'/%3E%3Crect x='50' y='1' width='40' height='1.5'/%3E%3Crect x='-22' y='29' width='40' height='1.5'/%3E%3Crect x='26' y='29' width='40' height='1.5'/%3E%3Crect x='74' y='29' width='40' height='1.5'/%3E%3C/g%3E%3Cg fill='rgba(0,0,0,.45)'%3E%3Crect x='2' y='22' width='40' height='2'/%3E%3Crect x='50' y='22' width='40' height='2'/%3E%3Crect x='-22' y='50' width='40' height='2'/%3E%3Crect x='26' y='50' width='40' height='2'/%3E%3Crect x='74' y='50' width='40' height='2'/%3E%3C/g%3E%3Cg fill='rgba(200,225,255,.025)'%3E%3Crect x='6' y='6' width='14' height='9' rx='2'/%3E%3Crect x='58' y='34' width='16' height='8' rx='2'/%3E%3C/g%3E%3C/svg%3E") 0 0/96px 56px repeat,
    #0e1013;
  box-shadow:0 50px 110px -22px rgba(0,0,0,.95), 0 0 0 4px #0b0c0e, 0 0 0 5px #4a515a,
    inset 0 1px 0 rgba(236,243,250,.14), inset 0 -16px 40px rgba(0,0,0,.5)}
body[data-background="diamond"] #mLoot .sheet::before{border-color:rgba(214,224,234,.12)}
body[data-background="diamond"] .sh-storage-heading .sh-section-label{color:#e3eaf1}
/* the trophy cabinet becomes a platinum showroom with a cold spotlight; the trophies keep their gold */
body[data-background="diamond"] .trophy-case{border-color:#6f7883;
  background:linear-gradient(180deg, rgba(220,235,255,.07), rgba(200,225,255,.02) 40%, rgba(0,0,0,.15)), linear-gradient(180deg,#1b1e22,#111316);
  box-shadow:0 0 24px rgba(170,215,255,.08), inset 0 1px 0 rgba(236,243,250,.14), inset 0 -12px 26px rgba(0,0,0,.45)}
body[data-background="diamond"] .trophy-case::after{background:linear-gradient(105deg, transparent, rgba(230,240,255,.08), transparent)}
body[data-background="diamond"] .showcase::before{background:radial-gradient(ellipse 50% 100% at 50% 0%, rgba(220,236,255,.2), transparent 70%)}
body[data-background="diamond"] .showcase::after{background:radial-gradient(ellipse at 50% 50%, rgba(190,225,255,.2), rgba(190,225,255,.05) 55%, transparent 72%)}
body[data-background="diamond"] .sl-item::before{background:radial-gradient(circle, rgba(220,236,255,.24), transparent 65%)}
body[data-background="diamond"] .sl-item.leg::before{background:radial-gradient(circle, rgba(225,240,255,.4), transparent 66%)}
body[data-background="diamond"] .sl-item .oe-img{filter:drop-shadow(0 6px 10px rgba(0,0,0,.68)) drop-shadow(0 0 10px rgba(190,225,255,.2))}
body[data-background="diamond"] .sl-item .op{background:radial-gradient(ellipse at 50% 28%, #ffffff, #b9c2cc 55%, #59616b 92%);
  box-shadow:0 5px 12px rgba(0,0,0,.55), 0 0 16px rgba(170,215,255,.3), inset 0 1px 0 rgba(255,255,255,.6)}
body[data-background="diamond"] .sl-item.leg .op{box-shadow:0 5px 12px rgba(0,0,0,.55), 0 0 28px rgba(170,215,255,.6), inset 0 1px 0 rgba(255,255,255,.6)}
body[data-background="diamond"] :is(.sl-item .ostar,.twk){color:#f4faff; text-shadow:0 0 9px rgba(170,215,255,.85)}
body[data-background="diamond"] .sl-nav{border-color:#6f7883; color:#e6f4ff;
  background:radial-gradient(circle at 50% 32%, rgba(52,58,66,.9), rgba(14,16,19,.85) 70%); box-shadow:0 3px 8px rgba(0,0,0,.45), inset 0 1px 0 rgba(236,243,250,.16)}
body[data-background="diamond"] .sl-nav:hover{border-color:#c9d0d8; color:#fff; box-shadow:0 0 14px rgba(170,215,255,.3), 0 3px 8px rgba(0,0,0,.45), inset 0 1px 0 rgba(236,243,250,.2)}
body[data-background="diamond"] :is(.sl-count,.case-count){color:#9aa5b1}
body[data-background="diamond"] .sl-story{color:#c3ccd6}
body[data-background="diamond"] .plaque{border-color:#6f7883; color:#e6f0f8;
  background:linear-gradient(180deg,#2a2e34,#17191d); box-shadow:inset 0 1px 0 rgba(236,243,250,.18), 0 2px 8px rgba(0,0,0,.4)}
body[data-background="diamond"] .sh-tabs{background:linear-gradient(180deg,#1f2328,#14171b)}
body[data-background="diamond"] .sh-subtabs{background:#101215}
@media (max-width:650px),(hover:none),(pointer:coarse){
  body[data-background="diamond"] .sh-tab[aria-selected="true"]{background:linear-gradient(180deg,#2c3138,#1c1f24); border-color:#8c959f; color:#f1f5f9}
  body[data-background="diamond"] .sh-subtab[aria-selected="true"]{color:#0c0f13; border-color:#c9d0d8; background:linear-gradient(180deg,#ffffff,#dfe5eb 46%,#a9b1ba)}
}

/* ---- the phone's input bar ---- */
body[data-background="diamond"] .lab-mobile{background:linear-gradient(180deg,#1b1e23f7,#08090bfc); border-top-color:#59616c}
body[data-background="diamond"] .lab-mobile-code button{background:linear-gradient(180deg,#0c0e11,#060708); border-color:#2c3138;
  color:#eef8ff; text-shadow:0 0 8px rgba(160,215,255,.4)}
body[data-background="diamond"] .lab-mobile-code button.current{border-color:#a8cdee; box-shadow:inset 0 2px 7px #000b, 0 0 9px rgba(170,215,255,.3)}
body[data-background="diamond"] .lab-mobile-actions button:where(:not(.submit)){background:linear-gradient(180deg,#2d3239,#1a1d22);
  border-color:#3b414a; color:#d7dee6; box-shadow:0 3px 0 #07080a}
body[data-background="diamond"] .lab-mobile-actions .submit{color:#0c0f13; border-color:#c9d0d8;
  background:linear-gradient(180deg,#ffffff,#d6dce3 60%,#9aa2ab); box-shadow:0 3px 0 #4a5058, inset 0 1px 0 #fff}
body[data-background="diamond"] .lab-mobile-keys button{background:linear-gradient(180deg,#2d3239,#191c21); border-color:#3a4048;
  color:#eef3f8; box-shadow:0 3px 0 #07080a, inset 0 1px 0 rgba(255,255,255,.08)}

/* ---- the phone menu ---- */
body[data-background="diamond"] .mobile-nav-toggle{border-color:#6f7883; color:#eef3f8;
  background:linear-gradient(155deg,#2c3138,#16191d 65%); box-shadow:inset 0 1px 0 rgba(236,243,250,.12), 0 3px 8px #0003}
body[data-background="diamond"] .mobile-nav-toggle[aria-expanded="true"]{border-color:#a9b3bd; background:var(--well)}
body[data-background="diamond"] .header-menu{border-color:#4a515a;
  background:radial-gradient(ellipse at 15% 0%, rgba(190,225,255,.1), transparent 58%), linear-gradient(150deg,#1f2328,#101215 65%);
  box-shadow:0 -16px 60px #0006, inset 0 1px 0 rgba(236,243,250,.14)}
body[data-background="diamond"] .mobile-nav-eyebrow{color:#cfe2f5}
body[data-background="diamond"] .mobile-nav-grip{background:rgba(214,224,234,.35)}
body[data-background="diamond"] .mobile-nav-close{border-color:rgba(214,224,234,.16); background:rgba(8,9,11,.4)}
body[data-background="diamond"] .header-menu .icon-btn{border-color:rgba(214,224,234,.14);
  background:linear-gradient(145deg, rgba(60,66,75,.35), rgba(24,27,32,.55))}
body[data-background="diamond"] .header-menu .icon-btn.active{border-color:rgba(214,224,234,.4); background:rgba(170,215,255,.12)}
body[data-background="diamond"] .header-menu .mobile-nav-icon{color:#c9d3dd}
body[data-background="diamond"] .header-menu #btnLoot{border-color:rgba(223,230,236,.45);
  background:linear-gradient(120deg, rgba(200,225,255,.12), rgba(40,45,52,.3))}
body[data-background="diamond"] .header-menu #btnLoot .mobile-nav-icon{border-color:rgba(223,230,236,.4); color:#f1f5f9;
  background:linear-gradient(140deg, rgba(200,225,255,.18), rgba(60,66,75,.2)); box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}
body[data-background="diamond"] .header-menu #btnLoot .mobile-nav-name{color:#f1f5f9}
body[data-background="diamond"] .header-menu #btnAccount{background:rgba(10,12,15,.5)}
body[data-background="diamond"] .header-menu #btnAccount .mobile-nav-icon{background:#2a2f36}

/* ---- everything else, from a colour audit of every screen: no green or brass left behind ---- */
body[data-background="diamond"]{background:radial-gradient(130% 95% at 50% 38%, transparent 52%, rgba(0,0,0,.55) 100%),
  radial-gradient(1200px 560px at 50% -220px, rgba(170,215,255,.07), transparent 62%), linear-gradient(180deg,#0e1013,var(--bg0) 58%)}
body[data-background="diamond"] ::-webkit-scrollbar-thumb{background:#2f353d}
body[data-background="diamond"] ::-webkit-scrollbar-thumb:hover{background:#8c959f}
body[data-background="diamond"] :is(.panel-scroll-body,#mPlayer .player-dialog-body){scrollbar-color:#4a515a #121418}
body[data-background="diamond"] .btn:where(:not(.primary):not(.ghost)){box-shadow:0 4px 0 #07080a, 0 7px 14px rgba(0,0,0,.4), inset 0 1px 0 rgba(255,255,255,.08)}
body[data-background="diamond"] .btn:where(:not(.primary):not(.ghost)):active{box-shadow:0 1px 0 #07080a, inset 0 2px 5px rgba(0,0,0,.4)}
body[data-background="diamond"] .btn-google{box-shadow:0 4px 0 #07080a, 0 7px 14px rgba(0,0,0,.4)}
body[data-background="diamond"] .btn-google:active{box-shadow:0 1px 0 #07080a}
body[data-background="diamond"] :is(.lab-text-btn,.acc-initial){color:#d6ecff}
body[data-background="diamond"] :is(.acc-forgot,.acc-back):hover{color:#e6f4ff}
body[data-background="diamond"] .lang-btn.on{border-color:#8c959f; background:linear-gradient(180deg, rgba(200,225,255,.16), rgba(200,225,255,.04));
  box-shadow:0 0 10px rgba(170,215,255,.16), inset 0 1px 0 rgba(255,255,255,.08)}
body[data-background="diamond"] .acc-field input:focus{border-color:#8c959f}
body[data-background="diamond"] .feedback-form :is(select,textarea):focus-visible{outline-color:#cfe6ff}
body[data-background="diamond"] .acc-card{border-color:#6f7883; background:linear-gradient(120deg, rgba(200,225,255,.1), rgba(200,225,255,.02))}
body[data-background="diamond"] :is(.acc-ava,.lb-ava){color:#0c0f13; background:linear-gradient(135deg,#ffffff,#c9d0d8 60%,#8f98a2)}
/* the selected tab, figures and progress read in platinum and ice */
body[data-background="diamond"] .acc-tabs button.on{color:#0c0f13; background:linear-gradient(180deg,#ffffff,#dfe5eb 55%,#a9b1ba)}
body[data-background="diamond"] .lb-tabs>button.on{background:transparent}
body[data-background="diamond"] .lb-tabs::before{background:linear-gradient(180deg,#ffffff,#dfe5eb 55%,#a9b1ba)}
body[data-background="diamond"] :is(.stat-cell .v,.time-line b,.ap-count b,.lb-val:not(.money),.res-next b,.pend-k){color:#e6f4ff}
body[data-background="diamond"] .stat-cell .v{text-shadow:0 0 12px rgba(170,215,255,.25)}
body[data-background="diamond"] .sec-label::before{color:#d6ecff; text-shadow:0 0 6px rgba(170,215,255,.6)}
body[data-background="diamond"] .dist-row:not(.fail) .bar:not(.zero){color:#0c0f13; background:linear-gradient(90deg,#6f7883,#e6eef5)}
body[data-background="diamond"] .ach.got{border-color:#8f98a2; background:linear-gradient(180deg, rgba(200,225,255,.1), rgba(200,225,255,.02));
  box-shadow:0 0 12px rgba(170,215,255,.1), inset 0 1px 0 rgba(255,255,255,.05)}
body[data-background="diamond"] :is(.ach.got .an,.ach.got .ach-progress-label){color:#e6f4ff}
body[data-background="diamond"] .ach-progress-label{color:#a7b0ba}
body[data-background="diamond"] .ach-progress-track{background:#07080a}
body[data-background="diamond"] :is(.ach-progress-track i,#mPlayer .profile-level-track i,#mPlayer .profile-medal-progress i){background:linear-gradient(90deg,#6f7883,#e6eef5)}
body[data-background="diamond"] .lb-page.on{border-color:#c9d0d8; color:#0c0f13; background:linear-gradient(180deg,#ffffff,#a9b1ba)}
body[data-background="diamond"] .lb-page:hover:not(:disabled){border-color:#8c959f; color:#e6f4ff}
body[data-background="diamond"] :is(.lb-row.me,.pend-strip){border-color:#8f98a2; background:linear-gradient(120deg, rgba(200,225,255,.12), rgba(200,225,255,.03)); box-shadow:0 0 12px rgba(170,215,255,.1)}
body[data-background="diamond"] .lb-fairplay-note{border-color:rgba(214,224,234,.16); border-left-color:#8c959f; background:rgba(200,225,255,.04)}
body[data-background="diamond"] .res-code .dchip{border-color:#6f7883; color:#eef8ff; box-shadow:inset 0 3px 9px rgba(0,0,0,.7), 0 0 16px rgba(170,215,255,.1);
  background:linear-gradient(180deg,#07080a,#0e1013)}
body[data-background="diamond"] :where(.tool-chip,.hstep){background:linear-gradient(180deg,#1b1f24,#121519)}
body[data-background="diamond"] .fab{border-color:#8c959f; color:#e6f4ff; background:linear-gradient(180deg,#2a2f36,#16191d)}
body[data-background="diamond"] .hstep .hs-n{color:#0c0f13; background:linear-gradient(180deg,#ffffff,#dfe5eb 55%,#a9b1ba)}
body[data-background="diamond"] .inv-slot .sconf{background:rgba(8,9,11,.92)}
body[data-background="diamond"] .lab-debrief-digits .absent{color:#a9b2bc}
/* leaderboards: the podium keeps its metals on a graphite base; links light up in ice */
body[data-background="diamond"] .lb-row.lb-podium{
  background:linear-gradient(110deg,rgba(var(--podium-rgb),.13),rgba(var(--podium-rgb),.025) 62%) padding-box,
    linear-gradient(#15171b,#15171b) padding-box,
    linear-gradient(115deg,var(--podium-edge),var(--podium-dark) 38%,var(--podium-dark) 66%,var(--podium-edge)) border-box}
body[data-background="diamond"] .lb-profile-link:not(.lb-podium){--podium-rgb:190,215,240}
body[data-background="diamond"] .lb-profile-link:focus-visible{outline-color:#cfe6ff}
@media(hover:hover) and (pointer:fine){
  body[data-background="diamond"] .lb-profile-link:not(.lb-podium):not(.me):hover{border-color:#8c959f}
  body[data-background="diamond"] .lb-profile-link.me:not(.lb-podium):hover{border-color:#dfe6ec}
}
/* notices: graphite plates; success, warning and error keep their edge colours */
body[data-background="diamond"] .toast-card{
  background:radial-gradient(ellipse at 0 0, rgba(var(--notice-rgb),.09), transparent 70%), linear-gradient(120deg,#1e2227,#121417 85%)}
body[data-background="diamond"] .toast-card:is(:not([data-tone]),[data-tone="info"]){--notice-accent:#e6f4ff; --notice-rgb:200,225,255; border-color:#59616c}
body[data-background="diamond"] .toast-card[data-tone="achievement"]{--notice-accent:#f1f5f9; --notice-rgb:200,225,255; border-color:#8f98a2;
  background:radial-gradient(ellipse at 0 0, rgba(200,225,255,.14), transparent 75%), linear-gradient(120deg,#262a30,#16191d 85%)}
body[data-background="diamond"] .toast-has-value .toast-message{color:#b9c2cc}
body[data-background="diamond"] .toast-close{color:#a7b0ba}
/* the rest of the phone menu */
body[data-background="diamond"] .mobile-nav-close:active{background:rgba(90,98,109,.33)}
body[data-background="diamond"] .mobile-nav-summary :is(.streak-chip,#lvlChip){background:rgba(8,9,11,.4)}
body[data-background="diamond"] .header-menu .mobile-nav-switch{border-color:rgba(163,172,182,.33); background:#08090b}
body[data-background="diamond"] #soundToggle[aria-pressed="true"] .mobile-nav-switch{background:#276144; border-color:#448562}
/* news */
body[data-background="diamond"] .updates-header::after{background:linear-gradient(90deg,#ffffff,#a9b1ba)}
body[data-background="diamond"] :is(.updates-group:first-child .updates-date,.update-copy h4,.update-icon){color:#e6f4ff}
body[data-background="diamond"] #newsBody:focus-visible{outline-color:#cfe6ff}
/* safehouse titles, owned and selected states; the gold card keeps its gold */
body[data-background="diamond"] :is(.sh-section-heading h3,.sh-item-status){color:#e6f4ff}
body[data-background="diamond"] #mLoot :is(.lab-scene-card:not([data-scene="gold"]) .lab-scene-copy h3,.sh-music-title){color:#f1f5f9}
body[data-background="diamond"] #mLoot .lab-scene-card[data-scene="gold"] .sh-item-status{color:#ffd985}
body[data-background="diamond"] .sh-equipped{border-color:#6f7883; color:#e6f4ff}
body[data-background="diamond"] #mLoot :is(.lab-scene-card,.sh-music-card).selected:where(:not([data-scene="gold"]):not([data-scene="diamond"])){border-color:#8f98a2;
  box-shadow:inset 3px 0 0 #dfe6ec, inset 0 1px 0 rgba(255,255,255,.04), 0 4px 10px #0005}
body[data-background="diamond"] #mLoot button.lab-scene-art:hover{border-color:#8c959f}
body[data-background="diamond"] .lab-scene-progress progress{color:#c9d0d8}
body[data-background="diamond"] .lab-scene-progress progress::-webkit-progress-value{background:#c9d0d8}
body[data-background="diamond"] .lab-scene-progress progress::-moz-progress-bar{background:#c9d0d8}
body[data-background="diamond"] :is(.sh-tab,.sh-subtab):not([aria-selected="true"]):hover{color:#e6f4ff}
/* the player profile: graphite panels, a platinum badge and ice headings; trophies keep their own colours */
body[data-background="diamond"] #mPlayer button:focus-visible{outline-color:#cfe6ff}
body[data-background="diamond"] #mPlayer .profile-identity{border-color:#5a626d;
  background:radial-gradient(ellipse at 5% 0%, rgba(190,225,255,.08), transparent 75%), linear-gradient(120deg,#262a30,#16191d); box-shadow:inset 0 1px 0 rgba(236,243,250,.1)}
body[data-background="diamond"] #mPlayer .profile-avatar{border-color:#dfe6ec; color:#0c0f13; background:linear-gradient(145deg,#ffffff,#a9b1ba); box-shadow:0 0 0 4px rgba(200,225,255,.08), 0 5px 12px #0004}
body[data-background="diamond"] #mPlayer .profile-level-badge{color:#0c0f13; background:linear-gradient(#ffffff,#dfe5eb 60%,#a9b1ba)}
body[data-background="diamond"] #mPlayer :is(.profile-eyebrow,.profile-views svg,.profile-summary-item strong,.profile-section-title h2,.profile-trophy h3,.profile-trophy-arrow,.profile-cabinet-empty h3){color:#e6f4ff}
body[data-background="diamond"] #mPlayer .profile-medal h3,
body[data-background="diamond"] #mPlayer .profile-medal.is-earned .profile-medal-progress>span{color:#e6f4ff}
body[data-background="diamond"] #mPlayer .profile-summary{background:#111316}
body[data-background="diamond"] #mPlayer .profile-summary>div+div{border-left-color:rgba(70,77,87,.48)}
body[data-background="diamond"] #mPlayer .profile-panel{background:linear-gradient(145deg,#212429,#15171b)}
body[data-background="diamond"] #mPlayer .profile-dist-row:not(.is-fail) .profile-dist-fill:not(.is-zero){color:#0c0f13; background:linear-gradient(90deg,#6f7883,#c9d0d8 60%,#f4f8fb)}
body[data-background="diamond"] #mPlayer .profile-cabinet{border-color:#5a626d; background:radial-gradient(ellipse at 50% 35%, rgba(190,225,255,.07), transparent 70%), linear-gradient(155deg,#24282e,#15171b)}
body[data-background="diamond"] #mPlayer .profile-trophy-art{background:radial-gradient(ellipse at 50% 65%, rgba(190,225,255,.08), transparent 61%)}
body[data-background="diamond"] #mPlayer .profile-trophy.is-legendary .profile-trophy-art{background:radial-gradient(ellipse at 50% 60%, rgba(214,236,255,.14), transparent 62%)}
body[data-background="diamond"] #mPlayer :is(.profile-trophy-tag,.profile-medal-state){color:#b9c6d3}
body[data-background="diamond"] #mPlayer :is(.profile-trophy p,.profile-medal p,.profile-medal-progress>span){color:#a9b2bc}
body[data-background="diamond"] #mPlayer .profile-trophy-arrow{border-color:rgba(214,224,234,.3); background:rgba(12,14,17,.8)}
body[data-background="diamond"] #mPlayer .profile-collection-heading{border-top-color:rgba(214,224,234,.14)}
body[data-background="diamond"] #mPlayer .profile-trophy-thumbnails{scrollbar-color:#4a515a #121418}
body[data-background="diamond"] #mPlayer .profile-trophy-thumbnails button{border-color:#3b414a; background:#0c0e11}
body[data-background="diamond"] #mPlayer .profile-trophy-thumbnails button[aria-pressed="true"]{border-color:#dfe6ec; background:rgba(200,225,255,.1); box-shadow:inset 0 0 10px rgba(170,215,255,.12)}
body[data-background="diamond"] #mPlayer .profile-rare-dot{background:#f4faff; box-shadow:0 0 6px rgba(170,215,255,.9)}
body[data-background="diamond"] #mPlayer .profile-cabinet-empty svg{color:#9aa5b1}
body[data-background="diamond"] #mPlayer .profile-medal{border-color:#5a626d; background:linear-gradient(150deg, rgba(200,225,255,.08), #191c20)}
body[data-background="diamond"] #mPlayer .profile-medal-progress>div{background:#07080a}
body[data-background="diamond"] #mPlayer .profile-medal.is-locked{border-color:#30353c; background:#111316}
body[data-background="diamond"] #mPlayer .profile-medal.is-locked :is(h3,p,.profile-medal-state){color:#7d8690}
@media(hover:hover) and (pointer:fine){
  body[data-background="diamond"] #mPlayer .profile-trophy-arrow:hover{background:#2a2f36; border-color:#8c959f}
  body[data-background="diamond"] #mPlayer .profile-trophy-thumbnails button:hover{border-color:#8c959f}
}
@media(max-width:700px){body[data-background="diamond"] #mPlayer .profile-summary .profile-wallet{border-bottom-color:rgba(70,77,87,.48)}}

/* ---- the safe ---- */

body[data-background="diamond"] .console{
  border-color:#59606a; border-top-color:#cfd6de;
  --doorframe: 0 0 0 1px #040506, 0 0 0 2px #5a616a, 0 0 0 3px #eef2f6, 0 0 0 4px #9ba3ac, 0 0 0 5px #3b4148,
    0 0 0 9px #101317, 0 0 0 10px rgba(0,0,0,.6);
  background:
    linear-gradient(115deg, transparent 32%, rgba(220,232,245,.045) 44%, rgba(236,244,252,.09) 50%, rgba(220,232,245,.045) 56%, transparent 68%),
    repeating-conic-gradient(from 0deg at 50% 20%, rgba(255,255,255,.022) 0deg .5deg, transparent .5deg 1.6deg),
    repeating-linear-gradient(90deg, rgba(255,255,255,.008) 0 1px, transparent 1px 3px),
    radial-gradient(120% 80% at 50% -20%, rgba(170,200,235,.15), transparent 58%),
    radial-gradient(90% 60% at 50% 125%, rgba(0,0,0,.55), transparent 70%),
    linear-gradient(168deg,#262a31,#15181c 50%,#0b0d10);
  box-shadow:var(--doorframe), 0 40px 80px -26px rgba(0,0,0,.95), 0 0 48px rgba(150,200,255,.07),
    inset 0 1px 0 rgba(236,243,250,.3), inset 2px 0 6px -4px rgba(220,230,240,.16),
    inset -3px 0 8px -5px rgba(0,0,0,.6), inset 0 -14px 30px rgba(0,0,0,.5);
}
body[data-background="diamond"] .console.open{border-color:#4f9b7c;
  box-shadow:var(--doorframe), 0 40px 80px -26px rgba(0,0,0,.95), 0 0 48px rgba(61,220,151,.15),
    inset 0 1px 0 rgba(236,243,250,.3), inset 0 -14px 30px rgba(0,0,0,.5)}
body[data-background="diamond"] .console.busted{border-color:#8a3434;
  box-shadow:var(--doorframe), 0 40px 80px -26px rgba(0,0,0,.95), inset 0 0 52px rgba(255,60,60,.12), inset 0 1px 0 rgba(236,243,250,.2)}
body[data-background="diamond"] .console::after{background:linear-gradient(115deg, transparent 30%, rgba(222,240,255,.34) 50%, transparent 70%)}
/* now and then a slow showroom sheen crosses the door */
body[data-background="diamond"] .console::before{content:''; position:absolute; inset:0; z-index:5; pointer-events:none; border-radius:inherit;
  background:linear-gradient(105deg, transparent 40%, rgba(230,240,255,.06) 46%, rgba(255,255,255,.12) 50%, rgba(230,240,255,.06) 54%, transparent 60%);
  background-size:300% 100%; background-position:115% 0}
body[data-background="diamond"]:not(.lab-background-paused):not(.lab-background-still) .console::before{animation:finishSheen 10s ease-in-out 2.5s infinite}
@keyframes finishSheen{0%,64%{background-position:115% 0}88%,100%{background-position:-15% 0}}

/* the inlay runs just inside the door edge, around the diamond rivets rather than through them */
body[data-background="diamond"] .console .c-frame{inset:4px; border-radius:18px; border-color:rgba(222,232,242,.15); box-shadow:inset 0 0 0 1px rgba(0,0,0,.35)}

/* rivets: brilliant-cut diamonds set in platinum, each with its own occasional glint */
body[data-background="diamond"] .console .rivet{width:11px; height:11px;
  background:
    radial-gradient(circle at 32% 28%, #fff 0 1.1px, transparent 2px),
    radial-gradient(circle, #f2f8ff 0 28%, transparent 30%),
    conic-gradient(#ffffff 0 12.5%, #8eabca 0 25%, #eef6ff 0 37.5%, #6f8fb3 0 50%, #ffffff 0 62.5%, #9db9d8 0 75%, #f4f9ff 0 87.5%, #7898bb 0);
  box-shadow:0 0 0 1.5px #c9d0d8, 0 0 0 2.5px #4a5159, 0 1px 3px 2px rgba(0,0,0,.55), 0 0 7px rgba(190,225,255,.3)}
body[data-background="diamond"] .console .rivet::after{content:''; position:absolute; left:50%; top:50%; width:17px; height:17px; margin:-8.5px 0 0 -8.5px;
  pointer-events:none; opacity:0;
  background:linear-gradient(90deg, transparent 46%, #fff 50%, transparent 54%), linear-gradient(0deg, transparent 46%, #fff 50%, transparent 54%);
  -webkit-mask:radial-gradient(circle, #000 0 18%, transparent 68%); mask:radial-gradient(circle, #000 0 18%, transparent 68%)}
body[data-background="diamond"]:not(.lab-background-paused):not(.lab-background-still) .console .rivet::after{animation:finishGlint 6.4s ease-in-out infinite}
body[data-background="diamond"] .console .rivet.r2::after{animation-delay:1.6s}
body[data-background="diamond"] .console .rivet.r3::after{animation-delay:3.3s}
body[data-background="diamond"] .console .rivet.r4::after{animation-delay:4.7s}
body[data-background="diamond"] .console .rivet.r5::after{animation-delay:.8s}
body[data-background="diamond"] .console .rivet.r6::after{animation-delay:2.5s}
@keyframes finishGlint{0%,84%,100%{opacity:0; transform:scale(.4) rotate(0)}90%{opacity:1; transform:scale(1.15) rotate(45deg)}96%{opacity:0; transform:scale(.5) rotate(90deg)}}

/* the alarm lights become cut gems; ruby and emerald keep their warning colours */
body[data-background="diamond"] .console .alabel{color:#b8c1cb}
body[data-background="diamond"] .console .aseg:where(:not(.lit):not(.safe)){border-color:#6a727b;
  background:radial-gradient(circle at 35% 28%, rgba(255,255,255,.32) 0 1.4px, transparent 3px),
    conic-gradient(from 20deg, #3d434a, #1a1e22, #2d3339, #121519, #353b42, #1a1e22, #3d434a);
  box-shadow:inset 0 1px 2px rgba(0,0,0,.6), 0 0 0 1px #0b0d10}
body[data-background="diamond"] .console .aseg.lit{border-color:#ffb1b1;
  background:radial-gradient(circle at 35% 28%, #fff 0 1.4px, transparent 3px),
    conic-gradient(from 20deg, #ff8a8a, #b3121f, #ff5a5f, #7d0912, #ff7277, #a30f1b, #ff8a8a)}
body[data-background="diamond"] .console .aseg.safe{border-color:#a8f0cf;
  background:radial-gradient(circle at 35% 28%, #fff 0 1.4px, transparent 3px),
    conic-gradient(from 20deg, #7cf0bf, #0d7a50, #45dca0, #075a39, #5fe8b0, #0b6b46, #7cf0bf)}
body[data-background="diamond"] .console .timer:where(:not(.jammed)){background:#07090b; border-color:#474e56; color:#e6f4ff;
  text-shadow:0 0 8px rgba(150,210,255,.5)}

/* dial: guilloché plate, polished bezel, black ceramic wheel, platinum spokes, a diamond hub */
body[data-background="diamond"] .console .dial-wrap::before{
  background:
    radial-gradient(circle at 50% 26%, rgba(255,255,255,.11), transparent 55%),
    repeating-linear-gradient(45deg, rgba(255,255,255,.055) 0 2px, rgba(0,0,0,.2) 2px 4px),
    repeating-linear-gradient(-45deg, rgba(255,255,255,.055) 0 2px, rgba(0,0,0,.2) 2px 4px),
    radial-gradient(circle, #2b3037 55%, #14171b);
  border-color:#8d959e;
  box-shadow:inset 0 3px 9px rgba(0,0,0,.6), inset 0 -1px 0 rgba(236,243,250,.12), 0 0 0 2px #0b0d10, 0 0 0 3px #b9c0c8, 0 0 0 4px #4a5159;
}
body[data-background="diamond"] .console .dial-wrap::after{border-top-color:#eef8ff; filter:drop-shadow(0 0 5px rgba(170,215,255,.75))}
body[data-background="diamond"] .console .dial-shadow{box-shadow:0 10px 24px rgba(0,0,0,.62), 0 0 22px rgba(170,215,255,.12)}
body[data-background="diamond"] .console .dial{
  background:radial-gradient(circle at 36% 28%, #4b515a, #1b1e23 55%, #07080a);
  border-color:#dbe1e7;
  box-shadow:inset 0 2px 3px rgba(255,255,255,.22), inset 0 -8px 16px rgba(0,0,0,.6), 0 0 0 1px #0a0c0e}
body[data-background="diamond"] .console .dial.turning{box-shadow:inset 0 2px 3px rgba(255,255,255,.26), inset 0 -8px 16px rgba(0,0,0,.6), 0 0 0 1px #0a0c0e}
body[data-background="diamond"] .console .dial:focus-visible{box-shadow:0 0 0 3px rgba(170,215,255,.35), 0 0 20px rgba(170,215,255,.25),
  inset 0 2px 3px rgba(255,255,255,.22), inset 0 -8px 16px rgba(0,0,0,.6)}
body[data-background="diamond"] .console .dial::before{border-color:rgba(222,232,242,.42); border-style:dotted; opacity:.85}
/* a pavé bezel: a ring of small diamonds turns with the wheel */
body[data-background="diamond"] .console .dial::after{
  background:repeating-conic-gradient(from 2deg, transparent 0 1.6deg, #ffffff 1.6deg 3deg, #a9c5e3 3deg 4.4deg, #f4f9ff 4.4deg 5.8deg, transparent 5.8deg 7.5deg);
  filter:drop-shadow(0 0 2px rgba(190,225,255,.55))}
body[data-background="diamond"] .console .dial .spoke{background:linear-gradient(90deg,#5d646d,#e8edf2 38%,#ffffff 50%,#b8bfc7 62%,#4b5159);
  box-shadow:0 0 0 1px rgba(0,0,0,.35), 0 2px 4px rgba(0,0,0,.45)}
/* the hub is a brilliant seen from above: a bright table inside eight sharp facets */
body[data-background="diamond"] .console .dial .hub{border:2px solid #dbe1e7;
  background:
    radial-gradient(circle at 36% 30%, rgba(255,255,255,.95) 0 1.6px, transparent 3.5px),
    conic-gradient(from 22.5deg, rgba(255,255,255,.55) 0 12.5%, transparent 0 25%, rgba(255,255,255,.55) 0 37.5%, transparent 0 50%,
      rgba(255,255,255,.55) 0 62.5%, transparent 0 75%, rgba(255,255,255,.55) 0 87.5%, transparent 0),
    radial-gradient(circle, #f4f9ff 0 30%, #dbe9f8 31% 36%, transparent 37%),
    conic-gradient(#ffffff 0 12.5%, #86a6c9 0 25%, #eaf3ff 0 37.5%, #6787ad 0 50%, #ffffff 0 62.5%, #98b6d6 0 75%, #f1f7ff 0 87.5%, #7393b8 0);
  box-shadow:0 3px 8px rgba(0,0,0,.6), 0 0 14px rgba(180,220,255,.4), inset 0 0 0 1px rgba(0,0,0,.25)}
body[data-background="diamond"] .console .dial .hub::after{content:''; position:absolute; left:50%; top:50%; width:34px; height:34px; margin:-17px 0 0 -17px;
  pointer-events:none; opacity:0;
  background:linear-gradient(90deg, transparent 47%, #fff 50%, transparent 53%), linear-gradient(0deg, transparent 47%, #fff 50%, transparent 53%);
  -webkit-mask:radial-gradient(circle, #000 0 14%, transparent 66%); mask:radial-gradient(circle, #000 0 14%, transparent 66%)}
body[data-background="diamond"]:not(.lab-background-paused):not(.lab-background-still) .console .dial .hub::after{animation:finishGlint 7.5s ease-in-out 1.1s infinite}

/* code windows: black glass with ice-white digits; selection, duplicates and results keep their colours */
body[data-background="diamond"] .console .slot{background:linear-gradient(180deg,#030405,#090b0d 65%,#050607);
  box-shadow:inset 0 4px 12px rgba(0,0,0,.8), inset 0 -1px 0 rgba(255,255,255,.04), 0 0 0 1px #0b0d10, 0 1px 0 rgba(236,243,250,.08)}
body[data-background="diamond"] .console .slot:where(:not(.active):not(.dial-selected):not(.duplicate):not(.good):not(.reveal)){border-color:#3e454d}
body[data-background="diamond"] .console .slot:where(:not(.duplicate):not(.good):not(.reveal)){color:#eef8ff;
  text-shadow:0 0 14px rgba(160,215,255,.55), 0 0 36px rgba(160,215,255,.18)}
body[data-background="diamond"] .console .slot::before{color:#bfe3ff}
body[data-background="diamond"] .console .slot.active{border-color:#7fb2da}
body[data-background="diamond"] .console .slot.dial-selected{border-color:#d2eaff;
  box-shadow:inset 0 4px 12px rgba(0,0,0,.8), inset 0 -1px 0 rgba(255,255,255,.04), 0 0 0 2px rgba(170,215,255,.14), 0 0 17px rgba(170,215,255,.2)}
body[data-background="diamond"] .console .slot.active .caret{background:#e6f4ff; box-shadow:0 0 8px rgba(170,215,255,.8)}

/* notes strip */
body[data-background="diamond"] .console .notes-toggle{color:#c4cdd7; border-color:#3e454d; background:rgba(9,11,14,.6)}
body[data-background="diamond"] .console .notes-toggle:hover,body[data-background="diamond"] .console .notes-wrap.open .notes-toggle{color:#eef3f8; border-color:#6f7882; background:rgba(16,19,23,.8)}
body[data-background="diamond"] .console .tk:where(:not(.in):not(.out)){background:linear-gradient(180deg,#1d2127,#121418); border-color:#3a4148; color:#c4cdd7}
body[data-background="diamond"] .console .tracker-hint{color:#98a2ad}
body[data-background="diamond"] .console .tool-chip:where(:not(.arm):not(.passive)){border-color:#4a5159; background:linear-gradient(180deg,#1d2127,#121418); color:#d6dee6}

/* keypad: black ceramic caps with a platinum rim; the crack key is polished platinum */
body[data-background="diamond"] .console .keypad{background:linear-gradient(180deg,#0a0c0f,#0d1013 60%,#080a0c); border-color:#2a2f35;
  box-shadow:inset 0 2px 7px rgba(0,0,0,.7), inset 0 -1px 0 rgba(236,243,250,.05), 0 1px 0 rgba(236,243,250,.06)}
body[data-background="diamond"] .console .key{background:linear-gradient(180deg,#040506,#0a0c0f 60%,#07090b)}
body[data-background="diamond"] .console .key:not(.enter) .kcap{
  background:
    radial-gradient(140% 110% at 50% -18%, rgba(236,243,250,.16), transparent 50%),
    radial-gradient(65% 48% at 50% 55%, rgba(0,0,0,.2), transparent 72%),
    linear-gradient(180deg,#2d3239,#1a1e23 52%,#121418);
  box-shadow:0 6px 0 -1px #07080a, 0 7px 3px -1px rgba(0,0,0,.6), 0 9px 14px rgba(0,0,0,.5),
    inset 0 0 0 1px rgba(214,224,234,.16), inset 0 1px 0 rgba(255,255,255,.22), inset 0 -2px 5px rgba(0,0,0,.5)}
body[data-background="diamond"] .console .key:not(.enter):active .kcap,body[data-background="diamond"] .console .key:not(.enter).pressed .kcap{
  box-shadow:0 0 0 -1px #07080a, 0 1px 1px rgba(0,0,0,.5), 0 1px 3px rgba(0,0,0,.4),
    inset 0 0 0 1px rgba(214,224,234,.12), inset 0 3px 7px rgba(0,0,0,.5)}
body[data-background="diamond"] .console .key:where(:not(.enter):not(.alt)) .kd{color:#eef3f8}
body[data-background="diamond"] .console .key:where(:not(.enter)) .kl{color:#8d96a0}
body[data-background="diamond"] .console .key:where(:not(.enter):not(.alt)):hover .kd{color:#d4ecff}
body[data-background="diamond"] .console .key:where(:not(.enter):not(.alt)):is(:active,.pressed) .kd{color:#effaff; text-shadow:0 0 14px rgba(160,215,255,.7), 0 0 4px rgba(160,215,255,.45)}
body[data-background="diamond"] .console .key.enter .kcap{
  background:radial-gradient(140% 110% at 50% -18%, rgba(255,255,255,.8), transparent 52%), linear-gradient(180deg,#ffffff,#d6dce3 45%,#9aa2ab);
  box-shadow:0 6px 0 -1px #4a5058, 0 7px 3px -1px rgba(0,0,0,.55), 0 9px 16px rgba(170,215,255,.18),
    inset 0 1px 0 rgba(255,255,255,.9), inset 0 -2px 5px rgba(0,0,0,.18)}
body[data-background="diamond"] .console .key.enter:is(:active,.pressed) .kcap{
  box-shadow:0 0 0 -1px #4a5058, 0 1px 1px rgba(0,0,0,.45), 0 1px 4px rgba(170,215,255,.22),
    inset 0 1px 0 rgba(255,255,255,.6), inset 0 3px 7px rgba(0,0,0,.2)}
body[data-background="diamond"] .console .key.enter .kd{color:#0c0f13; text-shadow:0 1px 0 rgba(255,255,255,.6)}
body[data-background="diamond"] .console .key.enter .kl{color:#3a4149}

/* engraved maker's plate, with the edition underneath */
body[data-background="diamond"] .console .plate{color:#aab3bc; text-shadow:0 1px 0 rgba(0,0,0,.85), 0 -1px 0 rgba(255,255,255,.07)}
body[data-background="diamond"] .console .plate::after{content:'Édition Diamant Noir'; display:block; margin-top:7px; font-size:8px; letter-spacing:4px;
  color:#e3eaf1; text-shadow:0 0 8px rgba(170,215,255,.35), 0 1px 0 rgba(0,0,0,.8)}

@media (prefers-reduced-motion:reduce){
  body[data-background="diamond"] .console::before,body[data-background="diamond"] .console .rivet::after,
  body[data-background="diamond"] .console .dial .hub::after{animation:none!important; opacity:0}
}
