.rc-generator { --gp-paper:#eee8db;--gp-muted:#aaa99f;--gp-line:#ffffff25;--gp-orange:#e77f47;--gp-cyan:#8cb9b7;color:var(--gp-paper);background:#191d1bf5;border:1px solid #d8d2bf35;box-shadow:0 20px 80px #0007;display:flex;flex-direction:column;width:min(480px,100%);max-height:calc(100dvh - 48px);min-height:0;overflow:hidden;text-align:left;font:13px/1.45 Arial,Helvetica,sans-serif;letter-spacing:0;pointer-events:auto;color-scheme:dark;isolation:isolate; }
.rc-generator *, .rc-generator *::before, .rc-generator *::after { box-sizing:border-box; }
.rc-generator [hidden] { display:none!important; }
.rc-generator :is(button,input,textarea) { font:inherit;color:inherit;letter-spacing:inherit;border-radius:0; }
.rc-generator button { min-height:40px;border:1px solid #ffffff30;background:#ffffff05;padding:10px 13px;cursor:pointer;font-size:11px;font-weight:600;text-transform:none;touch-action:manipulation; }
.rc-generator button:hover:not(:disabled) { background:#ffffff0f;border-color:#eee8db80; }
.rc-generator button:disabled { cursor:default;opacity:.38; }
.rc-generator :is(button,input,textarea,summary,canvas):focus-visible { outline:2px solid var(--gp-cyan);outline-offset:3px; }
.rc-generator-header { display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:23px 24px 18px;border-bottom:1px solid var(--gp-line);flex-shrink:0; }
.rc-generator-kicker { margin:0 0 9px;color:var(--gp-orange);font:9px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1.8px; }
.rc-generator-header h2 { margin:0;font-size:27px;line-height:1.13;letter-spacing:-1.2px;font-weight:600; }
.rc-generator .rc-generator-close { min-width:36px;min-height:36px;padding:3px;margin:-4px -4px 0 0;font-size:25px;line-height:1;font-weight:300; }
.rc-generator-scroll { overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#736e5f #0000;min-height:0;padding:17px 24px; }
.rc-generator-intro { font-size:12px;line-height:1.65;color:#c1c1b6;margin:0 0 17px; }
.rc-generator-connection-state { display:flex;align-items:center;gap:7px;padding:12px 0;border-block:1px solid var(--gp-line); }
.rc-generator-connection-state > span { width:6px;height:6px;flex-shrink:0;background:#8d8e83;border-radius:50%; }
.rc-generator-connection-state > span.is-ready { background:var(--gp-cyan); }
.rc-generator-connection-state strong { font-size:12px;font-weight:500; }
.rc-generator-connection-state small { margin-left:auto;color:var(--gp-muted);font:8px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.5px; }
.rc-generator summary { list-style:none;display:flex;align-items:center;gap:8px;min-height:42px;cursor:pointer;font-size:11px; }
.rc-generator summary::-webkit-details-marker { display:none; }
.rc-generator summary::before { content:'+';color:var(--gp-orange);font-size:17px;width:10px; }
.rc-generator details[open] > summary::before { content:'−'; }
.rc-generator summary > span { margin-left:auto;font-size:10px;color:var(--gp-muted); }
.rc-generator-details { padding-bottom:5px; }
.rc-generator label { display:flex;flex-direction:column;gap:7px;font-size:11px;line-height:1.4;font-weight:500;margin:0 0 14px;color:#d7d4c9; }
.rc-generator :is(input,textarea) { width:100%;min-width:0;min-height:40px;padding:10px 11px;border:1px solid var(--gp-line);background:#101414a6;font-size:13px;line-height:1.5; }
.rc-generator input:disabled { opacity:.6; }
.rc-generator textarea { resize:vertical;min-height:92px;max-height:240px; }
.rc-generator textarea::placeholder,.rc-generator input::placeholder { color:#7e847c;opacity:1; }
.rc-generator-help { font-size:11px;line-height:1.6;color:var(--gp-muted);margin:0 0 14px; }
.rc-generator label small { font-size:10px;font-weight:400;color:var(--gp-muted); }
.rc-generator-actions { display:flex;gap:8px;margin:10px 0 13px; }
.rc-generator-actions button { flex:1; }
.rc-generator .rc-generator-subtle { color:var(--gp-muted);font-weight:400; }
.rc-generator-status { margin:0;color:var(--gp-cyan);font-size:11px;line-height:1.6;overflow-wrap:anywhere; }
.rc-generator-status:not(:empty) { margin:8px 0 17px;padding-left:10px;border-left:2px solid #8cb9b766; }
.rc-generator-status.is-error { color:#ffc1a5;border-left-color:#e77f4780; }
.rc-generator-form { padding-top:17px;border-top:1px solid var(--gp-line); }
.rc-generator-grid { display:grid;grid-template-columns:1fr 1fr;gap:14px; }
.rc-generator .rc-generator-primary { display:flex;align-items:center;justify-content:space-between;width:100%;min-height:46px;gap:10px;padding:13px 16px;border:0;background:var(--gp-orange);color:#1d1a15;font-size:13px;font-weight:700; }
.rc-generator .rc-generator-primary:hover:not(:disabled) { background:#f39259; }
.rc-generator-primary > span { font-size:19px;line-height:1;font-weight:400; }
.rc-generator-job { margin-top:20px;padding:16px 0 0;border-top:1px solid var(--gp-line); }
.rc-generator-job-heading { display:flex;align-items:center;justify-content:space-between;gap:12px; }
.rc-generator-job-heading strong { font-size:13px;font-weight:500; }
.rc-generator-job-heading time { font:10px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--gp-muted);white-space:nowrap; }
.rc-generator-stage-line { height:2px;background:#ffffff20;margin:12px 0;overflow:hidden; }
.rc-generator-stage-line i { display:block;width:100%;height:100%;background:var(--gp-cyan);opacity:.55; }
.rc-generator-stage-line.is-active i { width:35%;background:var(--gp-orange);opacity:1;animation:gp-activity 2.8s ease-in-out infinite alternate; }
.rc-generator-job code { display:block;word-break:break-all;color:#91978d;font:9px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace; }
.rc-generator-preview { border-top:1px solid var(--gp-line);padding-top:16px;margin-top:18px; }
.rc-generator-preview-head { display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px; }
.rc-generator-preview-head strong { color:var(--gp-cyan);font:9px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1px; }
.rc-generator-preview-head > span { color:var(--gp-muted);font-size:9px; }
.rc-generator canvas { display:block;width:100%;height:240px;background:#202625;touch-action:none;cursor:grab; }
.rc-generator canvas:active { cursor:grabbing; }
.rc-generator-preview-controls { display:flex;gap:5px;align-items:center;margin:8px 0 12px; }
.rc-generator-preview-controls > span { margin-right:auto;font-size:10px;color:var(--gp-muted); }
.rc-generator-preview-controls button { min-height:34px;padding:6px 10px;font-size:10px;font-weight:400; }
.rc-generator-footer { flex-shrink:0;border-top:1px solid var(--gp-line);background:#1a1d1c;padding:15px 24px 17px; }
.rc-generator-footnote { font-size:10px;line-height:1.5;color:var(--gp-muted);margin:10px 0 0; }
@keyframes gp-activity { from{transform:translateX(0)}to{transform:translateX(186%)} }
@media(max-width:720px){.rc-generator{width:100%;max-height:88dvh}.rc-generator-header{padding:18px 18px 14px}.rc-generator-header h2{font-size:25px}.rc-generator-scroll{padding:14px 18px}.rc-generator-footer{padding:13px 18px}.rc-generator :is(input,textarea){font-size:16px}.rc-generator-connection-state small{font-size:7px}.rc-generator canvas{height:210px}.rc-generator .rc-generator-close{min-width:44px;min-height:44px}}
@media(max-height:560px) and (min-width:600px){.rc-generator{max-height:calc(100dvh - 20px);width:410px}.rc-generator-header{padding:13px 18px 10px}.rc-generator-header h2{font-size:22px}.rc-generator-kicker{font-size:8px;margin-bottom:5px}.rc-generator-scroll{padding:12px 18px}.rc-generator-footer{padding:10px 18px}.rc-generator-footnote{font-size:9px;margin-top:6px}.rc-generator .rc-generator-primary{min-height:40px;padding-block:10px}.rc-generator canvas{height:200px}}
@media(prefers-reduced-motion:reduce){.rc-generator *, .rc-generator *::before, .rc-generator *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.rc-generator-stage-line.is-active i{width:100%;opacity:.65}}

.rc-generator-upload { display:flex;align-items:center;gap:13px;width:100%;min-height:64px!important;text-align:left;border:1px dashed #e77f4780!important;background:#e77f470a!important;padding:13px 15px!important; }
.rc-generator-upload > span:first-child { display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border:1px solid #e77f4780;border-radius:50%;color:var(--gp-orange);font-size:23px;font-weight:400; }
.rc-generator-upload > span:last-child { font-size:13px;line-height:1.4; }
.rc-generator-upload small { display:block;margin-top:4px;font-size:10px;color:var(--gp-muted);font-weight:400; }
.rc-generator-reference { margin-bottom:18px; }
.rc-generator-reference-preview { display:grid;grid-template-columns:94px minmax(0,1fr);gap:12px;margin:12px 0 0;padding:10px;background:#ffffff05;border:1px solid var(--gp-line); }
.rc-generator-reference-preview img { width:94px;height:94px;display:block;object-fit:contain;background:repeating-conic-gradient(#252c29 0% 25%,#333b36 0% 50%) 0/16px 16px; }
.rc-generator-reference-preview figcaption { min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px; }
.rc-generator-reference-preview strong { max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:500; }
.rc-generator-reference-preview figcaption > span { color:var(--gp-muted);font-size:10px; }
.rc-generator-reference-preview button { min-height:40px;padding:8px 10px;font-size:11px; }
.rc-generator-label-note { color:var(--gp-muted);font-size:10px;font-weight:400;margin-top:-3px; }
.rc-generator-credit { font-size:10px;line-height:1.6;color:var(--gp-muted);margin:8px 0 0; }
.rc-generator-credit a { color:#c4d7cd;text-underline-offset:3px; }
.rc-generator a:focus-visible { outline:2px solid var(--gp-cyan);outline-offset:3px; }
@media(max-width:720px){.rc-generator button,.rc-generator summary{min-height:44px}.rc-generator-reference-preview button{min-height:44px}.rc-generator-upload > span:last-child{font-size:14px}.rc-generator-upload small,.rc-generator-help{font-size:12px}.rc-generator .rc-generator-close{min-width:44px;min-height:44px}.rc-generator-credit{font-size:11px}.rc-generator-footer{padding-bottom:max(13px,env(safe-area-inset-bottom))}}
