:root{color:#17211d;background:#f5f7f1;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{border:1px solid #263a33;background:#17211d;color:#fff;border-radius:8px;cursor:pointer;min-height:40px;padding:0 16px}button:disabled{cursor:not-allowed;opacity:.55}button.secondary,.ratings button{background:#fff;color:#17211d}button.danger{border-color:#9b1c1c;color:#9b1c1c}.import-session{align-items:center;background:#fff;border:1px solid #263a33;border-radius:8px;color:#17211d;cursor:pointer;display:inline-flex;font-weight:400;justify-content:center;min-height:40px;padding:0 16px}.import-session input{display:none}main{max-width:1180px;margin:0 auto;padding:32px 20px 56px}.app-header{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;border-bottom:2px solid #263a33;padding-bottom:24px}.header-actions{align-items:flex-end;display:grid;gap:10px;justify-items:end}.account-strip{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.language-toggle{background:#fff;border:1px solid #cbd5c9;border-radius:8px;display:inline-flex;gap:4px;padding:4px}.language-toggle button{background:transparent;border-color:transparent;color:#17211d;min-height:32px;padding:0 10px}.language-toggle button.active{background:#17211d;color:#fff}.language-setting-row{align-items:center;background:#f6f1e9;border:1px solid #e2d5c3;border-radius:8px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:12px}.referral-landing-message{background:#eef5ec;border:1px solid #c9dcc6;border-radius:8px;color:#2f4e38;font-weight:700;margin-top:18px;padding:12px 14px}.memory-panel{background:#fff;border:1px solid #cbd5c9;border-radius:8px;display:grid;gap:14px;margin-top:18px;padding:16px}.memory-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.memory-grid h3{font-size:.9rem;margin-bottom:8px}.eyebrow{color:#b35c2e;font-size:.78rem;font-weight:800;letter-spacing:0;margin:0 0 8px;text-transform:uppercase}h1{font-size:clamp(2rem,5vw,4rem);line-height:1;margin:0}h2,h3,p{margin-top:0}.input-panel,.panel,.notice{background:#fff;border:1px solid #cbd5c9;border-radius:8px;margin-top:24px;padding:20px}.input-panel{display:grid;gap:16px}.stepper{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px}.step{align-items:center;background:#fff;color:#17211d;display:flex;gap:10px;justify-content:flex-start;min-height:54px;text-align:left}.step strong{align-items:center;background:#e9efe7;border-radius:999px;display:inline-flex;height:28px;justify-content:center;width:28px}.step.active{background:#17211d;color:#fff}.step.active strong,.step.done strong{background:#5e8d6a;color:#fff}.input-grid,.profile-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}label{display:grid;gap:8px;font-weight:700}.field-help{color:#5b675f;font-size:.86rem;font-weight:400;margin:0}textarea{min-height:190px;resize:vertical}input,textarea{border:1px solid #9aa89e;border-radius:8px;padding:12px}.actions{display:flex;flex-wrap:wrap;gap:10px}.mission-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.mission-button{align-items:flex-start;display:grid;gap:6px;height:100%;line-height:1.35;min-height:112px;padding:14px;text-align:left}.mission-button strong{font-size:1rem}.mission-button span{font-size:.86rem;font-weight:400;opacity:.82}.mission-grid .import-session{grid-column:1 / -1}.youtube-import{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(260px,1fr) auto auto}.importer-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.import-section{border-top:1px solid #e2e6df;display:grid;gap:12px;padding-top:16px}.notice-box{background:#eef5ec;border:1px solid #c9dcc6;border-radius:8px;color:#2f4e38;margin:0;padding:12px}.workflow-status{background:#f7faf5;border:1px solid #cbd5c9;border-left:5px solid #5e8d6a;border-radius:8px;display:grid;gap:12px;padding:14px}.workflow-status.done{border-left-color:#356340}.workflow-status.failed{background:#fff8f2;border-left-color:#b35c2e}.workflow-status-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.workflow-status-header strong{display:block;margin-bottom:4px}.workflow-status-header p{color:#4d5b54;font-size:.92rem;margin:0}.workflow-status-header>span{background:#e9efe7;border-radius:999px;color:#263a33;flex:0 0 auto;font-size:.8rem;font-weight:800;padding:4px 9px}.workflow-steps{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));list-style:none;margin:0;padding:0}.workflow-steps li{align-items:center;color:#68756d;display:flex;font-size:.86rem;gap:8px;min-width:0}.workflow-steps li.done,.workflow-steps li.active{color:#17211d;font-weight:700}.workflow-steps li.failed{color:#8a3d22;font-weight:800}.step-dot{background:#d8dfd5;border-radius:999px;display:inline-flex;flex:0 0 auto;height:10px;width:10px}.workflow-steps li.done .step-dot{background:#356340}.workflow-steps li.active .step-dot{background:#b35c2e;box-shadow:0 0 0 4px #f1dccb}.workflow-steps li.failed .step-dot{background:#b35c2e}.workflow-meta{display:flex;flex-wrap:wrap;gap:8px}.workflow-meta span{background:#fff;border:1px solid #dce4d9;border-radius:999px;color:#4d5b54;font-size:.78rem;font-weight:700;padding:3px 8px}.empty-csv-callout{background:#fff8e8;border:1px solid #dfc98e;border-radius:8px;color:#3f341e;display:grid;gap:6px;padding:16px}.empty-csv-callout strong{font-size:1.35rem}.empty-csv-callout span{color:#5c4a23;line-height:1.5}.consent-box{background:#fff8e8;border:1px solid #dfc98e;border-radius:8px;color:#3f341e;display:grid;gap:10px;padding:12px}.consent-box p{margin:0}.checkbox-row{align-items:flex-start;display:flex;gap:10px;font-weight:700}.checkbox-row input{height:16px;margin-top:5px;padding:0;width:16px}.section-heading{align-items:center;display:flex;gap:10px;justify-content:space-between}.section-heading h3{margin:0}.import-preview{border:1px solid #e2e6df;border-radius:8px;overflow:auto}.import-preview table{border-collapse:collapse;min-width:860px;width:100%}.import-preview th,.import-preview td{border-bottom:1px solid #e2e6df;font-size:.82rem;overflow-wrap:anywhere;padding:8px;text-align:left;vertical-align:top}.import-preview th{background:#f6f1e9;font-weight:800}.mode-switch{border:1px solid #cbd5c9;border-radius:8px;display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px}.mode-switch button{background:#fff;border-color:transparent;color:#17211d}.mode-switch button.active{background:#17211d;color:#fff}.source-options summary{color:#4d5b54;cursor:pointer;font-weight:700;margin-bottom:10px}.priority-import{border-color:#c8d8cc}.validation-messages{display:flex;flex-wrap:wrap;gap:8px;margin-top:-4px}.policy-strip,.feedback-grid{display:flex;flex-wrap:wrap;gap:8px}.policy-strip span{background:#f6f1e9;border-radius:999px;color:#263a33;font-size:.82rem;font-weight:800;padding:5px 10px}.feedback-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.feedback-button{background:#fff;color:#17211d}.feedback-button.active{background:#dfeedd;border-color:#356340;color:#17211d}.short-textarea{min-height:92px}.panel-header,.card-topline{align-items:center;display:flex;gap:12px;justify-content:space-between}.score,.card-topline span,.chip{background:#e9efe7;border-radius:999px;color:#263a33;font-size:.82rem;font-weight:700;padding:4px 10px}.score.ready{background:#dfeedd;color:#244f30}.subtle,.notice-text{color:#5b675f}.metric-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.metric{background:#f6f1e9;border-radius:8px;padding:12px}.metric span{color:#5b675f;display:block;font-size:.82rem}.metric strong{font-size:1.45rem}.summary-columns,.clue-row,.admin-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-top:18px}.compact-list{list-style:none;margin:0;padding:0}.compact-list li{border-bottom:1px solid #e2e6df;display:flex;gap:10px;justify-content:space-between;padding:6px 0}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip.muted{color:#6b756f}.notice,.error{color:#8a3d22}.recommendations-grid,.player-panel{display:grid;gap:16px;margin-top:24px}.player-panel{grid-template-columns:minmax(0,1fr)}.recommendation{background:#fff;border:1px solid #cbd5c9;border-left:6px solid #5e8d6a;border-radius:8px;display:grid;gap:10px;padding:16px}.youtube-frame,.youtube-search-card{aspect-ratio:16 / 9;border-radius:8px;width:100%}.youtube-frame{border:0;background:#111814}.youtube-search-card{align-items:center;background:#111814;color:#d9f2e5;display:flex;font-weight:800;justify-content:center;text-decoration:none}.queue-row{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.queue-row button{background:#fff;color:#17211d;min-height:44px;overflow-wrap:anywhere;padding:8px;text-align:left}.queue-row button.active{background:#17211d;color:#fff}.queue-row button.rated{border-color:#5e8d6a;background:#dfeedd}.share-panel{background:#f6f1e9;border:1px solid #d8cbb9;border-radius:8px;display:grid;gap:12px;padding:16px}.app-footer{align-items:center;border-top:1px solid #cbd5c9;color:#5b675f;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-top:28px;padding-top:18px}.app-footer a{color:#245d38;font-weight:800}.recommendation.adjacent{border-left-color:#4f7c9b}.recommendation.stretch{border-left-color:#a36b44}.recommendation.diagnostic{border-left-color:#9b4f63}.recommendation h3{margin-bottom:0}.artist,.signal{color:#4d5b54}.ratings{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.ratings button{align-items:center;display:grid;font-size:.82rem;gap:2px;justify-items:center;overflow-wrap:anywhere;padding:8px}.ratings button strong{font-size:.95rem}.ratings button span{line-height:1.2}.ratings button.active{background:#dfeedd;border-color:#356340}.explicit-actions{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px}.explicit-actions button{font-size:.82rem;overflow-wrap:anywhere;padding:8px}.admin-panel summary{cursor:pointer;font-weight:800}pre{background:#111814;border-radius:8px;color:#d9f2e5;max-height:340px;overflow:auto;padding:12px;white-space:pre-wrap}@media(max-width:720px){main{padding:20px 12px 36px}.app-header,.stepper,.mission-grid{grid-template-columns:1fr}.ratings{grid-template-columns:1fr 1fr}.youtube-import{grid-template-columns:1fr}}
