*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Hiragino Sans,Yu Gothic UI,sans-serif;background:#f4f4f6;color:#1a1a1a}.app{max-width:1200px;margin:0 auto;padding:16px}.appHeader h1{font-size:1.2rem;margin:0}.appHeaderRow{display:flex;align-items:baseline;gap:12px;margin:0 0 12px}.manualLink{font-size:.85rem}.appBody{display:flex;gap:16px;flex-wrap:wrap}.column{flex:1 1 480px;min-width:320px;display:flex;flex-direction:column;gap:12px}.panel{background:#fff;border:1px solid #ddd;border-radius:6px;padding:12px 16px}.panel h2{font-size:1rem;margin:0 0 8px}.panel>summary{font-size:1rem;font-weight:700;cursor:pointer}.panel[open]>summary{margin-bottom:8px}.panel h3{font-size:.9rem;margin:8px 0 4px}.field{display:block;margin-bottom:8px;font-size:.85rem}.field span{display:block;margin-bottom:2px;color:#444}.field input,.field select{width:100%;padding:6px 8px;border:1px solid #ccc;border-radius:4px;font-size:.9rem}.fieldCheckbox{display:flex;align-items:center;gap:6px}.fieldCheckbox input{width:auto;flex:none}.fieldCheckbox span{margin-bottom:0}.batchProgress{font-size:.85rem;color:#333;margin:4px 0}.taskInput{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px;font-size:.9rem;resize:vertical}.row{display:flex;align-items:center;gap:8px;margin:8px 0;flex-wrap:wrap}button{padding:6px 14px;border:1px solid #888;border-radius:4px;background:#eee;cursor:pointer;font-size:.85rem}button:hover:not(:disabled){background:#ddd}button:disabled{opacity:.5;cursor:not-allowed}button.danger{border-color:#c33;color:#c33;background:#fff5f5}.warning{color:#a85d00;font-size:.8rem;background:#fff6e6;border:1px solid #f0d090;border-radius:4px;padding:6px 8px}.checkResult{font-size:.8rem;color:#333}.selectedTab{font-size:.85rem;color:#333}.targetTabBanner{font-size:.85rem;background:#eef4ff;border:1px solid #c0d4f0;border-radius:4px;padding:6px 8px}.confirmBox{background:#fff8e6;border:2px solid #e0a000;border-radius:6px;padding:10px 12px;margin:10px 0}.elementText{font-family:monospace;font-size:.85rem;background:#f0f0f0;padding:4px 6px;border-radius:4px}.historyLog{list-style:none;margin:0;padding:0;max-height:260px;overflow-y:auto;font-family:monospace;font-size:.78rem}.historyLog li{padding:2px 0;border-bottom:1px solid #eee}.obsSummary{font-size:.85rem;color:#555}.lastCall{font-size:.85rem;background:#eef4ff;border-radius:4px;padding:6px 8px;word-break:break-all}.success{color:#0a8a2a;font-weight:700}.failure{color:#c33;font-weight:700}.resultText{margin:6px 0;font-size:.9rem}.summaryStats{list-style:none;margin:8px 0 0;padding:0;font-size:.85rem}.summaryStats li{padding:2px 0}.metricsTable{width:100%;border-collapse:collapse;font-size:.78rem}.metricsTable th,.metricsTable td{border-bottom:1px solid #eee;padding:4px 6px;text-align:left}.taskCell{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collapseToggle{background:none;border:none;font-size:.9rem;cursor:pointer;padding:0}.observationRaw{max-height:320px;overflow:auto;background:#f6f6f6;padding:8px;border-radius:4px;font-size:.75rem;white-space:pre-wrap;word-break:break-all}@media(max-width:768px){.appBody{flex-direction:column}}.screenshotThumb{margin:8px 0;max-width:100%}.screenshotThumb img{max-width:100%;border:1px solid #ccc;border-radius:4px}.saveRecipeBox{margin-top:10px;padding-top:10px;border-top:1px solid #eee}.hiddenFileInput{display:none}.recipeList{list-style:none;margin:0;padding:0}.recipeItem{padding:8px 0;border-bottom:1px solid #eee}.recipeHead{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.recipeMeta{font-size:.78rem;color:#777}.recipeTask{font-size:.82rem;color:#555;margin:4px 0}.replayForm{margin-top:8px;padding:8px;background:#f8f8fa;border-radius:4px}.csvBatchBox{margin-top:10px;padding-top:10px;border-top:1px solid #e3e3e8}.csvPreview{margin-top:6px;font-size:.82rem;color:#444}.csvPreview p{margin:4px 0}.setupChecklist .row{justify-content:space-between}.checklist{list-style:none;margin:0;padding:0}.checklist li{padding:6px 0;font-size:.9rem}.checkOk{color:#0a8a2a;font-weight:700}.checkNg{color:#c33;font-weight:700}.fieldNote{font-size:.78rem;color:#777;margin:-4px 0 8px}.advancedSettings{margin-top:10px;padding-top:10px;border-top:1px solid #eee}.advancedSettings summary{cursor:pointer;font-size:.85rem;color:#444;margin-bottom:8px}.accountPanel{margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.8rem}.accountPlan{font-weight:700;background:#eef4ff;border:1px solid #c0d4f0;border-radius:4px;padding:2px 8px}.accountStat{color:#444}.accountUpgradeChoice{display:flex;align-items:center;gap:6px}.accountLoginButton{font-size:.85rem}
