:root{color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;min-height:100vh;background:#05070c;color:#f4f2ee;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.millesime__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.2);background:#ffffff0f;color:#f4f2ee;padding:.65rem 1.3rem;border-radius:.6rem;font-size:.95rem;cursor:pointer;transition:transform .1s ease,background .15s ease}.millesime__btn:hover{background:#ffffff1f;transform:translateY(-1px)}.millesime__btn--primary{background:linear-gradient(135deg,#e4d4ff,#b48cff,#8455e0 60%,#4a2891);box-shadow:inset 0 1px #ffffff80;border-color:transparent;font-weight:600;color:#17092e}.millesime__btn--primary:hover{background:linear-gradient(135deg,#f0e6ff,#c6a8ff,#8455e0 60%,#4a2891)}.millesime__screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.2rem;padding:3rem 1.5rem 2.5rem;text-align:center}.millesime__etotpIcon{width:4.5rem;height:4.5rem;border-radius:50%}.millesime__intro h1{margin:0;font-size:2rem;letter-spacing:.03em}.millesime__tagline{margin:0;max-width:28rem;color:#f4f2eeb3}.millesime__error{color:#ff5a5a;font-size:.9rem;max-width:26rem}.millesime__spinner{width:2.6rem;height:2.6rem;border-radius:999px;border:3px solid rgba(255,255,255,.15);border-top-color:#b48cff;animation:millesime-spin .9s linear infinite}@keyframes millesime-spin{to{transform:rotate(360deg)}}.millesime__loadingStatus{color:#f4f2eebf}.millesime__empty p{max-width:26rem;color:#f4f2eecc}.millesime__hud{position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:5;background:#05070cb3;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:.5rem 1.1rem;font-size:.9rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.millesime__hudScore{font-weight:700;font-variant-numeric:tabular-nums;color:#c6a8ff}.millesime__playFallback{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;flex-direction:column;align-items:center;gap:.5rem;border:1px solid rgba(180,140,255,.6);background:#150d28;color:#e4d4ff;padding:1.6rem 2rem;border-radius:1.2rem;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 1rem 3rem #0009}.millesime__playFallbackIcon{display:flex;align-items:center;justify-content:center;width:3.2rem;height:3.2rem;border-radius:50%;background:linear-gradient(135deg,#e4d4ff,#b48cff,#8455e0 60%,#4a2891);color:#17092e;font-size:1.3rem}.millesime__card{display:flex;flex-direction:column;align-items:center;gap:.7rem;margin-top:1.5rem}.millesime__cardImage{width:10rem;height:10rem;object-fit:cover;border-radius:.9rem;border:1px solid rgba(255,255,255,.12);box-shadow:0 1rem 2rem #0006;background:#ffffff0a}.millesime__cardInfo{display:flex;flex-direction:column;align-items:center;gap:.15rem;text-align:center}.millesime__cardArtist{font-size:1.1rem;font-weight:700}.millesime__cardAlbum{font-size:.85rem;color:#f4f2ee99}.millesime__gridHint{margin:.4rem 0 0;font-size:.85rem;color:#f4f2eea6}.millesime__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;width:100%;max-width:26rem}.millesime__cell{position:relative;-webkit-appearance:none;-moz-appearance:none;appearance:none;aspect-ratio:2 / 1;border:1px solid rgba(255,255,255,.16);background:#ffffff0d;color:#f4f2ee;border-radius:.6rem;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer;transition:transform .1s ease,background .15s ease,border-color .15s ease}.millesime__cell:hover:not(:disabled){background:#ffffff1a;transform:translateY(-2px)}.millesime__cell:disabled{cursor:default}.millesime__cellYear{position:relative;z-index:2;font-size:.85rem;font-weight:700;font-variant-numeric:tabular-nums}.millesime__cellCover{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.millesime__cell--correct .millesime__cellYear,.millesime__cell--revealed .millesime__cellYear{position:absolute;bottom:.15rem;right:.25rem;font-size:.6rem;background:#05070cc7;padding:.05rem .3rem;border-radius:.3rem}.millesime__cell--correct{border:2px solid #6fcf67}.millesime__cell--revealed{border:2px solid rgb(222,173,75)}.millesime__cell--wrong{border-color:#ff5a5a;background:#ff5a5a33}.millesime__finish h2{margin:0;font-size:1.8rem}.millesime__finishActions{display:flex;gap:.75rem}
