.journey-bar{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:12px;margin:0 0 22px}
.journey-card{display:flex;flex-direction:column;justify-content:center;gap:7px;min-width:0;padding:14px 16px;border:1px solid #393243;border-radius:11px;text-align:left;background:linear-gradient(125deg,#252032,#191a20);color:var(--text)}
.journey-label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;letter-spacing:.6px;color:#c5aadf;font-weight:600;line-height:1.3}
.journey-label strong{font-size:14px;white-space:nowrap;color:#efe4ff;font-variant-numeric:tabular-nums}
.journey-hint{font-size:12px;line-height:1.5;color:#b5aebe}
.journey-card progress{height:4px;margin-top:2px}
.journey-card progress::-webkit-progress-value{background:#be95ef}.journey-card progress::-moz-progress-bar{background:#be95ef}
.album-entry{border-color:#29434a;background:linear-gradient(125deg,#192f36,#191d24)}
.album-entry .journey-label{color:#8edbe8}.album-entry-link{font-size:12px;color:#9dd5dc}
.journey-rival{border-color:#464031;background:linear-gradient(125deg,#302b1d,#1b1c21)}
.journey-rival .journey-label{color:#e7ca89}.rival-message{font-size:14px;line-height:1.4;font-weight:500}
.journey-rival progress::-webkit-progress-value{background:#eaca7b}.journey-rival progress::-moz-progress-bar{background:#eaca7b}
.journey-rival.beaten{border-color:#d2f86a;background:linear-gradient(125deg,#2e3b1c,#1b241c)}
.journey-rival.beaten .rival-message{color:var(--lime);font-weight:700}
.mission-list{display:grid;gap:14px;margin-top:20px}.mission-row{display:flex;align-items:flex-start;gap:10px}
.mission-icon{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;border:1px solid #464050;border-radius:8px;background:#2c2537;color:#dfb5ff;font-size:13px;font-weight:700}
.mission-copy{display:grid;gap:6px;flex:1;min-width:0}.mission-copy strong{font-size:13px;font-weight:500;line-height:1.4}.mission-copy>span{font-size:11px;color:#a7a0b6;line-height:1.4}
.mission-copy progress{height:4px}.mission-row.completed .mission-icon{background:#2d3a21;border-color:#506633;color:var(--lime)}
.mission-row.completed .mission-copy>span{color:var(--lime)}.mission-row.completed progress::-webkit-progress-value{background:var(--lime)}.mission-row.completed progress::-moz-progress-bar{background:var(--lime)}
.missions-modal .mission-list{gap:23px;margin:25px 0}.missions-modal .mission-copy strong{font-size:16px}.missions-modal .mission-copy>span{font-size:13px}
.modal.album-modal{width:min(1020px,calc(100vw - 24px));max-width:1020px}.album-summary{color:#9ee7ef!important;font-size:14px!important;font-weight:600}
.album-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.album-card{min-width:0;padding:12px 10px 14px;border:1px solid #345054;border-radius:12px;background:radial-gradient(ellipse at 50% 5%,#2d3d49,transparent 65%),#191b22;text-align:center}
.album-card canvas{display:block;width:100%;max-width:125px;height:auto;margin:0 auto}.album-card h3{margin:0 0 4px;color:#f0ebff;font-family:var(--display);font-size:20px}
.album-card.undiscovered{border-color:#33343e;background:#1b1c23}.album-card.undiscovered canvas{filter:grayscale(1) brightness(.3);opacity:.65}
.album-rescues{display:block;color:#b5aebe;font-size:12px;min-height:20px}.album-card .album-next{font-size:12px;line-height:1.5;margin:12px 0 8px;min-height:36px;color:#adced5}
.album-card progress{height:4px;margin-bottom:15px}.album-card label{display:grid;gap:4px;text-align:left;margin-top:10px}.album-card label>span{font-size:12px;color:#aaa4b6}
.album-card select{width:100%;min-width:0;padding:7px 5px;background:#24252e;color:#e2dfeb;border:1px solid #484451;border-radius:5px;font:inherit;font-size:12px}.album-card select:disabled{opacity:.5}.album-card select:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.journey-notice{position:fixed;right:22px;bottom:22px;z-index:25;display:grid;gap:5px;width:340px;max-width:calc(100vw - 32px);padding:17px 20px;border:1px solid #b08de1;border-radius:12px;background:#252032f5;box-shadow:0 12px 45px #0008;pointer-events:none}
.journey-notice[hidden]{display:none}.journey-notice strong{font-family:var(--display);font-size:18px;letter-spacing:.3px;color:#e6c5ff}.journey-notice span{font-size:13px;color:#e0d9ea;line-height:1.5}
.journey-notice[data-kind=album]{border-color:#83d4df;background:#193038f5}.journey-notice[data-kind=album] strong{color:#a5f2ec}
.journey-notice[data-kind=record]{border-color:#e8cd84;background:#332c18f5}.journey-notice[data-kind=record] strong{color:#ffe5a6}
.end-progress{display:grid;gap:5px;margin:0 0 16px;font-size:12px;line-height:1.5;color:#bfc5b4}.end-progress strong{color:var(--lime);font-weight:500}.end-progress[hidden]{display:none}
@media(max-width:1000px){.album-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.journey-card{padding:12px}.journey-label{letter-spacing:0}}
@media(max-width:720px){.journey-bar{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:15px}.journey-rival{grid-column:1/-1;gap:5px}.journey-rival .journey-label{font-size:11px}.rival-message{font-size:13px}.journey-card{padding:11px 12px}.journey-label{font-size:11px}.journey-hint{font-size:12px}.journey-notice{top:calc(69px + env(safe-area-inset-top) + 10px);left:12px;right:12px;bottom:auto;width:auto;max-width:none}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.album-card{padding:10px 8px}.modal.album-modal{padding:20px 14px}.end-progress{font-size:11px}}
