.pai-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.pai-button,.pai-scenario{min-height:48px;padding:10px 15px;border:1px solid #dcdcf2;border-radius:12px;background:#fff;color:#5148a3;font-family:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer;touch-action:manipulation}
.pai-primary{background:#6252e8;color:#fff;border-color:#6252e8}
.pai-label{display:inline-flex;align-items:center;padding:3px 7px;border-radius:7px;background:#eeeafa;color:#7368a6;font-size:12px;line-height:1.4;white-space:nowrap}
.pai-text-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:8px 10px;border:0;border-radius:9px;background:transparent;color:#6255b5;font-size:14px;line-height:1.5;cursor:pointer;touch-action:manipulation}
.pai-inline-status{font-size:14px;color:#6d6790}
.pai-panel{font-size:14px;line-height:1.8;min-width:0;color:#3d415d}
.pai-panel-heading,.pai-fluency>header{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.pai-panel-heading>b{font-size:18px}
.pai-scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px}
.pai-scenario{font-weight:500;padding:10px 5px}
.pai-scenario.is-selected{border-color:#7164dd;background:#f1eefe;color:#5749ba;box-shadow:inset 0 0 0 1px #7164dd}
.pai-processing{display:flex;align-items:center;justify-content:center;gap:10px;min-height:150px;background:#f7f5ff;border-radius:13px;flex-wrap:wrap}
.pai-processing i{width:18px;height:18px;border:3px solid #ddd7fc;border-top-color:#7661dc;border-radius:50%;animation:pai-spin .9s linear infinite}
.pai-processing span{width:100%;text-align:center;font-size:14px;color:#81799f;margin-top:-25px}
.pai-error{padding:15px;background:#fff5ed;color:#965b2c;border-radius:12px}
.pai-output{padding:15px;border:1px solid #e5e2f3;border-radius:13px;background:#fcfbff}
.pai-output>label{font-weight:650;font-size:14px}
.pai-output pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto;margin:9px 0 12px}
.pai-output p,.pai-empty,.pai-source-note{font-size:14px;color:#7b7691}
.pai-panel-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.pai-source-note{margin:12px 0 0;font-size:13px}
.ol-recorder-area .pai-controls{justify-content:center;margin-top:10px}
.pai-fluency{margin:15px 0 0;padding:15px 17px;border:1px solid #e5e3f3;border-radius:13px;background:#faf9ff;font-size:14px;line-height:1.7;color:#595475}
.pai-fluency>header{margin-bottom:8px}
.pai-fluency p{margin:7px 0}.pai-fluency>small{display:block;font-size:13px;color:#8b839e}
.pai-fluency-score{display:flex;gap:17px;align-items:center}
.pai-fluency-score>strong{font-size:30px;line-height:1.3;color:#6354bf}.pai-fluency-score>strong>small{font-size:13px;font-weight:400;margin-left:3px}
.pai-fluency-score>div>b,.pai-fluency-score>div>span{display:block;font-size:14px}
.pai-button:focus-visible,.pai-text-button:focus-visible,.pai-scenario:focus-visible{outline:3px solid #aaa0f2;outline-offset:2px}
@keyframes pai-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.pai-processing i{animation:none}}
@media(max-width:420px){.pai-scenarios{gap:5px}.pai-scenario{font-size:13px}.pai-fluency{padding:13px}.pai-panel-actions .pai-button{flex:1 1 110px}}
