:root{--blue:#2864f0;--dark:#1e46aa;--pale:#ebf3ff;--text:#323232;--body:#595959;--muted:#747474;--border:#e9e7e7;--bg:#f7f8fa;--radius:12px}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--bg);color:var(--body);font:14px/1.7 -apple-system,BlinkMacSystemFont,"Helvetica Neue","Hiragino Kaku Gothic ProN",Arial,Meiryo,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,summary{outline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #8cb3ff}button{cursor:pointer}a{color:var(--blue)}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--text)}h1{font-size:30px;font-weight:650;letter-spacing:-.035em}h2{font-size:22px;font-weight:600;letter-spacing:-.02em}h3{font-size:16px}svg{width:20px;height:20px;flex-shrink:0}button{transition:background .15s,border-color .15s,box-shadow .15s}button:disabled{opacity:.5;cursor:default}.site-header{height:76px;background:white;border-bottom:1px solid var(--border)}.header-inner{height:100%;max-width:1240px;margin:auto;padding:0 36px;display:flex;gap:22px;align-items:center}.wordmark{text-decoration:none;color:var(--text);font-weight:800;letter-spacing:.08em;font-size:24px}.wordmark span{color:var(--blue)}.header-divider{height:19px;width:1px;background:var(--border)}.header-label{font-size:10px;letter-spacing:.14em;color:var(--muted)}.preview-label{margin-left:auto;border:1px solid var(--border);padding:4px 10px;border-radius:6px;font-size:10px;letter-spacing:.04em}main{max-width:1240px;padding:40px 36px 24px;margin:auto}.page-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:.14em;color:var(--blue);font-weight:700;margin-bottom:8px}.intro-copy{font-size:14px;margin-top:13px;line-height:1.85}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid #d5dbe5;background:white;border-radius:99px;padding:10px 18px;font-size:12px;min-height:40px;text-decoration:none;white-space:nowrap}.button:hover{background:#f3f6fc}.button.primary{background:var(--blue);border-color:var(--blue);color:white}.button.primary:hover{background:#285ac8}#saved-count{background:var(--pale);color:var(--blue);padding:0 6px;border-radius:4px;font-weight:600}.journey{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.journey-step{display:flex;align-items:center;gap:15px;padding:20px 22px;text-align:left;border:1px solid var(--border);background:white;border-radius:var(--radius);min-height:119px}.journey-step.active{border-color:var(--blue);background:#f1f6ff;box-shadow:0 0 0 1px var(--blue)}.step-number{font-size:24px;font-weight:300;letter-spacing:-.06em;color:#a4acbb;align-self:flex-start;line-height:1.4}.active .step-number{color:var(--blue)}.step-kicker,.step-description{display:block;font-size:11px;color:var(--muted)}.step-kicker{margin-bottom:2px}.journey-step strong{font-size:16px;color:var(--text);font-weight:600;display:block}.journey-step strong small{font-weight:500;color:var(--muted);font-size:11px;margin-left:5px}.step-description{margin-top:3px}.step-check,.step-arrow{margin-left:auto;color:var(--blue);font-size:20px}.step-check{visibility:hidden}.active .step-check{visibility:visible}.active .step-arrow{font-weight:700}.filter-panel{border:1px solid var(--border);border-radius:var(--radius);padding:22px;background:white}.filter-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.control-label{display:block;font-size:11px;color:var(--muted);margin-bottom:7px}.level-buttons{display:flex;gap:7px;flex-wrap:wrap}.level-buttons button{border:1px solid var(--border);background:white;padding:7px 17px;border-radius:7px;font-size:12px;min-height:36px}.level-buttons button[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:white}.level-help{max-width:440px;font-size:12px;margin-top:23px}.level-help summary{color:var(--blue);cursor:pointer;white-space:nowrap}.level-help[open]{width:46%;margin-top:0}.level-guide-row{margin:12px 0}.level-guide-row strong{color:var(--text);margin-right:8px}.level-guide-row p{margin-top:4px}.subtle{font-size:11px;color:var(--muted)}.filters{display:grid;grid-template-columns:1.5fr 1fr 1fr .75fr;gap:14px;margin-top:20px}input[type=search],select{width:100%;min-width:0;border:1px solid #dddfe5;border-radius:7px;background:white;height:42px;padding:8px 12px;font-size:12px}.input-wrap{display:flex;align-items:center;position:relative}.input-wrap svg{position:absolute;left:12px;color:#9ba3ae;width:17px}.input-wrap input{padding-left:38px}.filter-bottom{display:flex;justify-content:space-between;align-items:flex-start;border-top:1px solid #f0f0f1;margin-top:20px;padding-top:13px;gap:15px}#extra-filters{font-size:11px;flex:1}#extra-filters summary{cursor:pointer;color:var(--muted)}.extra-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:15px 0 2px}.text-button{padding:0;border:0;background:none;color:var(--blue);font-size:11px;white-space:nowrap}.text-button:hover{text-decoration:underline}.additional-filter{display:block;font-size:12px;border-top:1px solid #f0f0f1;padding-top:14px;margin-top:12px}input[type=checkbox]{accent-color:var(--blue)}.result-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin:32px 0 15px}.result-heading .eyebrow{margin-bottom:4px}.result-heading h2>span{margin-left:12px;color:var(--blue)}.result-heading h2 small{font-size:11px;font-weight:400;margin-left:5px}.result-heading p:not(.eyebrow){font-size:12px;margin-top:5px;color:var(--muted)}.filter-summary{font-size:11px;color:var(--muted);white-space:nowrap}.active-filters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:16px}.active-filters:empty{display:none}.active-chip{border:1px solid #dce6fb;background:#edf3ff;color:var(--dark);border-radius:99px;padding:4px 10px;font-size:10px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.content-card{background:white;border:1px solid var(--border);border-radius:var(--radius);padding:18px;display:flex;flex-direction:column;min-width:0;transition:border-color .15s,box-shadow .15s}.content-card:hover{border-color:#c2d2f1;box-shadow:0 3px 14px #243b6107}.card-labels{display:flex;gap:6px;align-items:center;margin-bottom:14px}.level-tag{border-radius:5px;padding:2px 8px;font-size:10px;font-weight:600;background:var(--level-bg,#edf3ff);color:var(--level-color,#285ac8)}.curated-tag{font-size:10px;color:#747474;display:inline-flex;align-items:center;gap:4px}.curated-tag svg{width:12px;height:12px;color:var(--blue)}.save-button{margin-left:auto;display:grid;place-items:center;border:0;background:transparent;color:#8b95a5;padding:5px;border-radius:5px}.save-button[aria-pressed=true]{background:var(--pale);color:var(--blue)}.save-button svg{width:18px;height:18px}.card-intro{display:flex;gap:13px;align-items:flex-start;min-height:102px}.artwork{width:76px;height:98px;flex:0 0 76px;border-radius:7px;position:relative;overflow:hidden;background:#f1f4fa;border:1px solid #edf0f6;display:grid;place-items:center}.artwork img{width:100%;height:100%;position:absolute;inset:0}.artwork-backdrop{object-fit:cover;filter:blur(10px) saturate(1.1);transform:scale(1.25);z-index:1}.artwork-image{object-fit:contain;background:#ffffff8c;z-index:2}.artwork:has(.artwork-image:not([hidden])) .artwork-fallback{visibility:hidden}.artwork-fallback{text-align:center;color:#9caac1;font-size:9px;line-height:1.8}.artwork-fallback svg{display:block;margin:0 auto 7px;width:25px;height:25px;stroke-width:1.1}.card-title{font-size:15px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.english-title{font-size:10px;color:#929292;line-height:1.5;margin-top:3px;overflow-wrap:anywhere}.type-line{font-size:10px;color:var(--muted);margin-top:7px}.reason{font-size:12px;line-height:1.8;margin:14px 0 12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:64px}.genre-tags{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:14px}.genre-tag{padding:2px 6px;font-size:9px;background:#f6f7f9;color:var(--muted);border-radius:4px}.card-meta{border-top:1px solid #f0f1f4;padding-top:12px;margin-top:auto;font-size:10px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.platform-tag{font-weight:600;color:#4d5c74}.cost-free{color:#007e34}.accent-line{margin-left:auto;color:var(--muted)}.card-actions{display:flex;justify-content:space-between;align-items:center;margin-top:13px;gap:10px}.detail-button{border:0;background:none;padding:0;color:var(--blue);font-size:11px}.link-note{font-size:9px;color:var(--muted)}.pagination{text-align:center;margin:24px 0}.pagination p{font-size:11px;color:var(--muted);margin-top:9px}.expand-search{display:flex;justify-content:space-between;gap:20px;align-items:center;background:#edf3ff;border:1px solid #dce6fb;padding:22px 25px;border-radius:var(--radius);margin-top:22px}.expand-search h3{font-size:15px;color:var(--dark);margin-bottom:5px}.expand-search p{font-size:12px;color:#687a99}.empty{grid-column:1/-1;background:white;border:1px dashed #d2d9e6;border-radius:12px;text-align:center;padding:45px 20px}.empty svg{width:30px;height:30px;color:#92a1b9}.empty h3{margin:10px 0 7px}.empty p{font-size:12px;margin-bottom:18px}.reference{background:white;border:1px solid var(--border);border-radius:var(--radius);padding:19px 22px;margin-top:30px}.reference summary{cursor:pointer;color:var(--body);font-size:12px}.reference-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:20px}.reference-grid h3{font-size:13px;margin-bottom:7px}.reference-grid p{font-size:12px;color:var(--muted)}footer{border-top:1px solid var(--border);margin-top:30px;padding:19px 0;font-size:10px;color:var(--muted)}footer p+p{margin-top:4px}.local-note{color:#949ba6}dialog{border:1px solid var(--border);border-radius:16px;padding:27px;max-width:660px;width:calc(100% - 32px);max-height:85vh;overflow:auto;color:var(--body);background:white}dialog::backdrop{background:#16244966}.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.dialog-heading h2{font-size:21px;line-height:1.5}.icon-button{border:0;background:#f4f5f7;width:30px;height:30px;border-radius:50%;font-size:20px;flex-shrink:0}.dialog-lead{font-size:12px;color:var(--muted);margin:12px 0 20px}.detail-section{padding:17px 0;border-top:1px solid var(--border);font-size:13px}.detail-section h3{font-size:11px;color:var(--muted);margin-bottom:8px;font-weight:400}.detail-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#f7f8fa;padding:15px;border-radius:8px;margin:20px 0}.detail-facts dt{font-size:10px;color:var(--muted)}.detail-facts dd{margin:3px 0 0;font-size:12px}.dialog-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.source-note{font-size:10px;color:var(--muted);margin-top:20px}.saved-item{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--border);padding:15px 0;font-size:13px}.saved-item small{display:block;color:var(--muted);font-size:10px;margin-top:4px}textarea{width:100%;border:1px solid #ddd;border-radius:7px;padding:10px;margin-top:10px;font-size:12px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#243b61;color:white;border-radius:8px;padding:11px 18px;font-size:12px;z-index:10;opacity:0;pointer-events:none;transition:opacity .15s;max-width:90vw}#toast.show{opacity:1}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(min-width:1450px){main{padding-top:48px}}@media(max-width:1050px){.header-inner{padding:0 24px}main{padding:30px 24px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{grid-template-columns:1fr 1fr}.journey-step{padding:17px;gap:11px}.journey-step strong{font-size:14px}.step-description{font-size:10px}.step-number{font-size:21px}.journey-step strong small{display:block;margin-left:0}.level-help{max-width:350px}}@media(max-width:650px){.site-header{height:65px}.header-inner{padding:0 18px;gap:12px}.wordmark{font-size:21px}.header-label,.header-divider{display:none}.preview-label{font-size:9px}main{padding:25px 16px}.page-intro{align-items:flex-start;margin-bottom:24px;gap:10px}h1{font-size:25px}.intro-copy{font-size:12px}.page-intro .button{padding:8px 12px;font-size:11px;margin-top:24px}.journey{grid-template-columns:1fr;gap:10px}.journey-step{min-height:98px}.journey-step strong small{display:inline;margin-left:6px}.step-description{font-size:11px}.filter-panel{padding:18px 15px}.filter-top{flex-direction:column;gap:14px}.level-help,.level-help[open]{margin-top:0;width:100%;max-width:none}.level-buttons{gap:5px}.level-buttons button{padding:6px 12px;font-size:11px}.filters{gap:13px 10px}.search-field{grid-column:1/-1}.filters>label:last-child{grid-column:1/-1}.extra-grid{grid-template-columns:1fr}.result-heading{align-items:flex-start;margin-top:26px}.filter-summary{display:none}.result-heading h2{font-size:20px}.cards{grid-template-columns:1fr}.content-card{padding:18px}.reason{min-height:0;-webkit-line-clamp:4}.expand-search{flex-direction:column;align-items:flex-start;padding:20px}.expand-search .button{width:100%}.reference-grid{grid-template-columns:1fr;gap:18px}.reference{padding:17px}.reference summary{font-size:11px}.detail-facts{grid-template-columns:1fr 1fr}dialog{padding:22px}.dialog-actions .button{flex:1}.filter-bottom{gap:8px}.active-filters{gap:5px}}
