/* AI Operator Recruit 1.4.0 - all-in-one */
html body .aiop-app.aiop-app { --ink:#172033;--muted:#657287;--line:#dce4ee;--soft:#f6f8fb;--blue:#2161f5;--blue2:#173f91;--navy:#0e1d40;--green:#0d8863; width:100%; color:var(--ink); font-size:17px; line-height:1.8; font-family:inherit; }
html body .aiop-app.aiop-app, html body .aiop-app.aiop-app *, html body .aiop-app.aiop-app *::before, html body .aiop-app.aiop-app *::after { box-sizing:border-box!important; }
html body .aiop-app.aiop-app [hidden], html body #page .aiop-app.aiop-app [hidden] { display:none!important; }
.aiop-shell { width:min(1120px,calc(100% - 24px)); margin:24px auto; border:1px solid #e2e8f0; border-radius:22px; background:#fff; overflow:hidden; box-shadow:0 24px 70px rgba(15,30,60,.09); }
.aiop-hero { position:relative; padding:58px 48px 52px; overflow:hidden; background:radial-gradient(circle at 91% 8%,rgba(77,210,213,.28) 0 100px,transparent 102px),radial-gradient(circle at 50% 105%,rgba(72,135,255,.24) 0 110px,transparent 112px),linear-gradient(130deg,#0c1a3a 0%,#17366f 55%,#277b9b 115%); color:#fff; }
.aiop-eyebrow { margin:0 0 18px!important; color:#82e3f5!important; font-size:13px!important; font-weight:800!important; letter-spacing:.13em!important; }
.aiop-badge { display:inline-flex; margin-bottom:18px; padding:5px 12px; border:1px solid rgba(128,224,241,.55); border-radius:999px; color:#d7fbff; font-size:13px; font-weight:700; }
html body #page .aiop-app.aiop-app .aiop-hero h2, html body .aiop-app.aiop-app .aiop-hero h2 { margin:0 0 20px!important; padding:0!important; border:0!important; color:#fff!important; text-align:left!important; font-size:clamp(38px,4.6vw,58px)!important; font-weight:800!important; line-height:1.2!important; letter-spacing:-.02em!important; }
.aiop-lead { max-width:880px; margin:0 0 24px!important; color:#e7eefc!important; font-size:18px!important; line-height:1.9!important; }
.aiop-punch { margin:0 0 26px!important; color:#82f0db!important; font-size:20px!important; font-weight:800!important; }
.aiop-benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.aiop-benefits>div { padding:18px; border:1px solid rgba(255,255,255,.18); border-radius:14px; background:rgba(255,255,255,.035); }
.aiop-benefits strong { display:block; margin-bottom:6px; color:#fff; font-size:16px; }
.aiop-benefits span { display:block; color:#d9e3f5; font-size:14px; line-height:1.7; }
.aiop-hero-note { margin-top:30px; padding-top:24px; border-top:1px solid rgba(255,255,255,.16); }
.aiop-hero-note p { margin:0 0 14px!important; color:#f1f5ff!important; font-size:18px!important; line-height:1.9!important; }
.aiop-hero-note small { display:block; margin-top:7px; color:#d7e2f4; font-size:14px; }
.aiop-form-area { padding:34px 46px 48px; }
.aiop-progress { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr))!important; gap:8px!important; margin:0 0 30px!important; padding:0!important; list-style:none!important; }
.aiop-progress li { position:relative; display:flex!important; flex-direction:column; align-items:center; gap:7px; margin:0!important; padding:0!important; color:#718096!important; font-size:13px!important; list-style:none!important; }
.aiop-progress li::before { position:absolute; top:16px; left:-50%; right:50%; height:2px; background:#dce4ee; content:""; }
.aiop-progress li:first-child::before { display:none; }
.aiop-progress li span { position:relative; z-index:2; display:grid!important; width:34px!important; height:34px!important; place-items:center; border:2px solid #dce4ee; border-radius:50%; background:#fff; font-size:13px; font-weight:800; }
.aiop-progress li.is-current,.aiop-progress li.is-complete { color:var(--blue)!important; }
.aiop-progress li.is-current span,.aiop-progress li.is-complete span { border-color:var(--blue); background:var(--blue); color:#fff; }
.aiop-progress li.is-current::before,.aiop-progress li.is-complete::before { background:var(--blue); }
.aiop-progress em { font-style:normal; }
.aiop-status { margin-bottom:28px; padding:11px 14px; border-radius:9px; background:#f1f5f9; color:#64748b; font-size:14px; }
.aiop-status.is-ready { background:#ecf8f3; color:#147356; }
.aiop-status.is-error { background:#fff1f1; color:#b42318; }
html body .aiop-app.aiop-app form.aiop-form { display:block!important; width:100%!important; margin:0!important; padding:0!important; border:0!important; background:transparent!important; }
.aiop-section-heading { margin:0 0 26px; padding-bottom:22px; border-bottom:1px solid var(--line); }
.aiop-section-heading>span { color:var(--blue); font-size:13px; font-weight:900; }
html body #page .aiop-app.aiop-app .aiop-section-heading h2, html body #page .aiop-app.aiop-app .aiop-section-heading h3, html body .aiop-app.aiop-app .aiop-section-heading h3 { margin:4px 0 8px!important; padding:0!important; border:0!important; color:var(--ink)!important; text-align:left!important; font-size:28px!important; font-weight:800!important; line-height:1.4!important; }
.aiop-section-heading p { margin:0!important; color:#5c687a!important; font-size:17px!important; line-height:1.85!important; }
.aiop-grid { display:grid!important; gap:20px!important; width:100%!important; }
.aiop-grid-2 { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
.aiop-field { width:100%!important; min-width:0!important; margin-bottom:28px!important; }
.aiop-field>label, fieldset.aiop-field>legend, fieldset.aiop-choice-group>legend { display:block!important; float:none!important; width:100%!important; margin:0 0 10px!important; padding:0!important; border:0!important; color:var(--ink)!important; text-align:left!important; font-size:17px!important; font-weight:750!important; line-height:1.55!important; }
.aiop-field b,.aiop-choice-group b { color:#c62828!important; font-size:12px!important; }
fieldset.aiop-field,fieldset.aiop-choice-group { min-width:0!important; width:100%!important; padding:0!important; border:0!important; background:transparent!important; }
fieldset.aiop-choice-group.is-invalid { padding:12px!important; border:1px solid #c62828!important; border-radius:10px!important; }
.aiop-field input[type=text],.aiop-field input[type=email],.aiop-field input[type=tel],.aiop-field input[type=url],.aiop-field input[type=number],.aiop-field input[type=file],.aiop-field textarea,.aiop-field select { display:block!important; width:100%!important; min-width:0!important; max-width:100%!important; min-height:50px!important; margin:8px 0 0!important; padding:12px 14px!important; border:1px solid #bdc7d5!important; border-radius:10px!important; background:#fff!important; box-shadow:none!important; color:var(--ink)!important; font:inherit!important; font-size:17px!important; line-height:1.6!important; }
.aiop-field textarea { min-height:130px!important; resize:vertical!important; }
.aiop-field input:focus,.aiop-field textarea:focus,.aiop-field select:focus { border-color:var(--blue)!important; outline:3px solid rgba(33,97,245,.13)!important; }
.aiop-field input[type=radio]:not(.aiop-category-grid input),.aiop-field input[type=checkbox] { position:static!important; display:inline-block!important; flex:0 0 19px!important; width:19px!important; min-width:19px!important; max-width:19px!important; height:19px!important; min-height:19px!important; max-height:19px!important; margin:3px 0 0!important; padding:0!important; opacity:1!important; appearance:auto!important; -webkit-appearance:auto!important; accent-color:var(--blue)!important; }
.aiop-options { display:flex!important; flex-wrap:wrap!important; gap:10px!important; width:100%!important; margin:0!important; padding:0!important; }
.aiop-options-stack { flex-direction:column!important; align-items:stretch!important; }
.aiop-options>label { display:flex!important; align-items:flex-start!important; gap:9px!important; width:auto!important; max-width:100%!important; min-height:46px!important; margin:0!important; padding:12px 15px!important; border:1px solid var(--line)!important; border-radius:10px!important; background:#fff!important; color:var(--ink)!important; font-size:16px!important; font-weight:500!important; line-height:1.6!important; cursor:pointer!important; }
.aiop-category-grid { display:grid!important; grid-template-columns:repeat(5,minmax(0,1fr))!important; gap:10px!important; width:100%!important; }
.aiop-category-grid label { display:block!important; margin:0!important; cursor:pointer; }
.aiop-category-grid input { position:absolute!important; width:1px!important; height:1px!important; opacity:0!important; pointer-events:none!important; }
.aiop-category-grid span { display:grid!important; min-height:88px!important; place-items:center!important; padding:14px!important; border:2px solid var(--line)!important; border-radius:12px!important; background:#fff!important; color:var(--ink)!important; text-align:center!important; font-size:17px!important; font-weight:800!important; }
.aiop-category-grid input:checked+span { border-color:var(--blue)!important; background:rgba(33,97,245,.07)!important; color:var(--blue)!important; }
.aiop-task-panel { margin:24px 0 30px; padding:24px; border:1px solid var(--line); border-left:5px solid var(--blue); border-radius:14px; background:var(--soft); font-size:16px; }
.aiop-task-panel h4,.aiop-process-card h4 { margin:0 0 10px!important; color:var(--ink)!important; text-align:left!important; font-size:21px!important; font-weight:800!important; }
.aiop-task-panel p,.aiop-process-card p { font-size:16px!important; line-height:1.85!important; }
.aiop-brief { margin:16px 0 18px; padding:16px 18px; border-radius:10px; background:#fff; border:1px solid #e2e8f0; }
.aiop-brief strong { font-size:15px; }
.aiop-brief ul { margin:8px 0 0!important; padding-left:1.4em!important; }
.aiop-brief pre { max-width:100%; padding:10px; overflow:auto; border-radius:8px; background:#0f172a; color:#e2e8f0; font-size:13px; }
.aiop-process-card { margin-top:30px; padding:26px; border:1px solid var(--line); border-radius:14px; background:#fff; }
.aiop-tool-group { margin-top:18px; }
.aiop-tool-group>span { display:block; margin-bottom:8px; color:#475569; font-size:14px; font-weight:800; }
.aiop-help { margin:7px 0 0!important; color:#6b7788!important; font-size:14px!important; line-height:1.7!important; }
.aiop-skill-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.aiop-divider { margin:34px 0 26px; border-top:1px solid var(--line); }
.aiop-subheading { margin:0 0 22px!important; color:var(--ink)!important; text-align:left!important; font-size:22px!important; }
.aiop-money { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:8px; margin-top:8px; }
.aiop-money span,.aiop-money em { color:#64748b; font-style:normal; font-weight:700; }
.aiop-money input { margin:0!important; }
.aiop-review { margin-bottom:24px; padding:20px; border-radius:14px; background:var(--soft); font-size:16px; }
.aiop-review dl,.aiop-review dd { margin:0; }
.aiop-review dl div { display:grid; grid-template-columns:150px 1fr; gap:12px; padding:11px 0; border-bottom:1px solid var(--line); }
.aiop-review dt { font-weight:800; }
.aiop-errors:empty { display:none!important; }
.aiop-errors { margin:18px 0; padding:14px 18px; border:1px solid #efb2b2; border-radius:10px; background:#fff4f4; color:#b42318; }
.aiop-errors p { margin:4px 0!important; }
.aiop-actions { display:flex!important; justify-content:space-between!important; gap:14px!important; margin-top:28px; padding-top:22px; border-top:1px solid var(--line); }
html body .aiop-app.aiop-app button.aiop-btn { display:inline-flex!important; min-width:130px!important; min-height:50px!important; align-items:center!important; justify-content:center!important; margin:0!important; padding:12px 28px!important; border:0!important; border-radius:10px!important; box-shadow:none!important; font:inherit!important; font-size:17px!important; font-weight:800!important; text-transform:none!important; cursor:pointer!important; appearance:none!important; }
.aiop-btn-primary { margin-left:auto!important; background:var(--blue)!important; color:#fff!important; }
.aiop-btn-primary:hover { background:#1749c5!important; color:#fff!important; }
.aiop-btn-secondary { background:#e9eef5!important; color:var(--ink)!important; }
.aiop-btn:disabled { opacity:.5!important; cursor:not-allowed!important; }
.aiop-hp { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; opacity:0!important; pointer-events:none!important; }
.aiop-success { padding:54px 20px; text-align:center; }
.aiop-success h3 { color:var(--ink)!important; text-align:center!important; font-size:28px!important; }
.aiop-success-icon { display:grid; width:68px; height:68px; margin:0 auto 18px; place-items:center; border-radius:50%; background:#e8f8f0; color:var(--green); font-size:32px; font-weight:900; }
@media(max-width:760px){
 .aiop-shell{width:calc(100% - 12px);margin:6px auto;border-radius:14px}.aiop-hero{padding:34px 20px 30px}.aiop-form-area{padding:24px 16px 34px}
 html body #page .aiop-app.aiop-app .aiop-hero h2,html body .aiop-app.aiop-app .aiop-hero h2{font-size:34px!important}.aiop-lead{font-size:16px!important}.aiop-punch{font-size:18px!important}
 .aiop-benefits{grid-template-columns:1fr}.aiop-hero-note p{font-size:16px!important}.aiop-progress em{display:none}.aiop-grid-2,.aiop-skill-grid{grid-template-columns:1fr!important}.aiop-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .aiop-category-grid span{min-height:78px!important;font-size:16px!important}.aiop-field>label,fieldset.aiop-field>legend,fieldset.aiop-choice-group>legend,.aiop-field input[type=text],.aiop-field input[type=email],.aiop-field input[type=tel],.aiop-field input[type=url],.aiop-field input[type=number],.aiop-field textarea{font-size:16px!important}
 .aiop-actions{position:sticky!important;bottom:0!important;z-index:20!important;margin:24px -16px -34px!important;padding:12px 16px!important;background:rgba(255,255,255,.97)!important;box-shadow:0 -6px 18px rgba(23,32,51,.08)}html body .aiop-app.aiop-app button.aiop-btn{flex:1 1 0!important;min-width:0!important;font-size:16px!important}
 .aiop-review dl div{grid-template-columns:1fr;gap:2px}
}


/* 1.4.2: ステップ操作ボタンのhiddenを最優先 */
html body .aiop-app.aiop-app button.aiop-btn[data-aiop-prev][hidden],
html body .aiop-app.aiop-app button.aiop-btn[data-aiop-next][hidden],
html body .aiop-app.aiop-app button.aiop-btn[data-aiop-submit][hidden],
html body #page .aiop-app.aiop-app button.aiop-btn[data-aiop-prev][hidden],
html body #page .aiop-app.aiop-app button.aiop-btn[data-aiop-next][hidden],
html body #page .aiop-app.aiop-app button.aiop-btn[data-aiop-submit][hidden] {
    display: none !important;
}
