.ro-ppss{--ro-accent:#1677ff;--ro-accent2:#16c7c2;--ro-angle:110deg;--ro-title-color:#fff;--ro-panel-bg:#f4f8fc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033;background:var(--ro-panel-bg);width:100%;max-width:none;margin:0 auto;padding:clamp(12px,2vw,28px);border-radius:18px;box-sizing:border-box;font-size:15px;line-height:1.5}.ro-ppss *{box-sizing:border-box}.ro-ppss[hidden],[hidden]{display:none!important}.ro-ppss-hero{display:flex;align-items:center;gap:16px;padding:22px 24px;border-radius:16px;background:linear-gradient(var(--ro-angle),var(--ro-accent),var(--ro-accent2));color:var(--ro-title-color);margin-bottom:20px;box-shadow:0 8px 24px #1677ff20}.ro-ppss-hero h2{margin:0 0 4px;color:var(--ro-title-color);font-size:clamp(22px,2.6vw,32px);line-height:1.2}.ro-ppss-hero p{margin:0;color:var(--ro-title-color);opacity:.9}.ro-ppss-logo{width:54px;height:54px;object-fit:contain;background:#ffffff20;border-radius:12px;padding:5px}.ro-ppss-theme{margin-left:auto;display:flex;align-items:center;gap:8px;white-space:nowrap}.ro-ppss select,.ro-ppss input:not([type=range]):not([type=color]):not([type=file]){width:100%;min-height:39px;border:1px solid var(--ro-border,#d9e1ec);border-radius:9px;background:var(--ro-input,#fff);color:var(--ro-text,#172033);padding:8px 10px;font:inherit}.ro-ppss input[type=color]{width:40px;height:34px;padding:2px;border:1px solid var(--ro-border,#d9e1ec);border-radius:8px;background:transparent;cursor:pointer}.ro-ppss input[type=range]{width:100%;accent-color:var(--ro-accent)}.ro-ppss-layout{display:grid;grid-template-columns:minmax(280px,370px) minmax(0,1fr);gap:20px;align-items:start}.ro-ppss-controls{display:grid;gap:14px;min-width:0}.ro-ppss-card{padding:17px;border:1px solid var(--ro-border,#e0e7f0);border-radius:14px;background:var(--ro-card,#fff);box-shadow:0 4px 14px #102c4d08;min-width:0}.ro-ppss-card h3,.ro-ppss-workspace-head h3{font-size:16px;margin:0 0 13px;color:var(--ro-text,#172033)}.ro-ppss-card label{display:block;font-size:13px;font-weight:650;margin:11px 0;color:var(--ro-text,#172033)}.ro-ppss-card label small{display:block;font-weight:400;opacity:.7;margin-top:4px}.ro-ppss-drop{display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1.5px dashed var(--ro-accent);border-radius:12px;padding:22px 12px;margin:0!important;cursor:pointer;background:color-mix(in srgb,var(--ro-accent) 5%,var(--ro-card,#fff));transition:border-color .18s,background .18s}.ro-ppss-drop:hover{border-color:var(--ro-accent2);background:color-mix(in srgb,var(--ro-accent2) 10%,var(--ro-card,#fff))}.ro-ppss-drop-icon{font-size:30px;line-height:1.2;color:var(--ro-accent)}.ro-ppss-drop strong{font-size:14px;margin:6px 0}.ro-ppss-drop small{font-size:11px;opacity:.7}.ro-ppss-btn-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.ro-btn{appearance:none;border:0;border-radius:9px;background:var(--ro-accent);color:#fff!important;font:inherit;font-size:13px;font-weight:700;padding:10px 13px;min-height:40px;cursor:pointer;transition:transform .15s,filter .15s;flex:1}.ro-btn:hover{filter:brightness(.94);transform:translateY(-1px)}.ro-btn:focus-visible,.ro-mode:focus-visible{outline:3px solid color-mix(in srgb,var(--ro-accent) 35%,transparent);outline-offset:2px}.ro-btn.secondary{background:var(--ro-soft-button,#edf2f8);color:var(--ro-text,#172033)!important;border:1px solid var(--ro-border,#d9e1ec)}.ro-ppss-status{font-size:12px;margin:10px 0 0;opacity:.8;overflow-wrap:anywhere}.ro-ppss-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ro-mode{border:1px solid var(--ro-border,#d9e1ec);background:var(--ro-soft-button,#edf2f8);color:var(--ro-text,#172033);border-radius:9px;padding:10px 6px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.ro-mode.active{background:color-mix(in srgb,var(--ro-accent) 12%,var(--ro-card,#fff));border-color:var(--ro-accent);color:var(--ro-accent)}.ro-ppss-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ro-ppss-color-row{display:flex;align-items:center;gap:8px;margin-top:6px}.ro-swatch{width:29px;height:29px;border-radius:50%;border:1px solid #9aa7b8;cursor:pointer;box-shadow:inset 0 0 0 2px #fff;flex-shrink:0}.ro-swatch[data-color="#ffffff"]{background:#fff}.ro-swatch[data-color="#d9efff"]{background:#d9efff}.ro-swatch[data-color="#1677d2"]{background:#1677d2}.ro-swatch[data-color="#e53935"]{background:#e53935}.ro-swatch[data-color="#e5e7eb"]{background:#e5e7eb}.ro-ppss-workspace{background:var(--ro-card,#fff);border:1px solid var(--ro-border,#e0e7f0);border-radius:15px;padding:18px;min-width:0;box-shadow:0 4px 14px #102c4d08}.ro-ppss-workspace-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.ro-ppss-workspace-head h3{margin-bottom:2px}.ro-ppss-workspace-head p{font-size:12px;opacity:.7;margin:0}.ro-ppss-workspace-head .ro-btn{flex:0 0 auto}.ro-ppss-canvas-wrap{min-height:420px;max-height:78vh;overflow:auto;display:flex;align-items:center;justify-content:center;position:relative;border-radius:12px;border:1px solid var(--ro-border,#d9e1ec);background-color:var(--ro-canvas-bg,#eef2f7);background-image:linear-gradient(45deg,#9aa7b81a 25%,transparent 25%),linear-gradient(-45deg,#9aa7b81a 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#9aa7b81a 75%),linear-gradient(-45deg,transparent 75%,#9aa7b81a 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0; padding:18px}.ro-ppss-canvas-wrap canvas{display:block;max-width:100%;max-height:72vh;width:auto;height:auto;object-fit:contain;box-shadow:0 4px 18px #102c4d25;cursor:crosshair;touch-action:none}.ro-ppss-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;color:var(--ro-text,#172033);pointer-events:none}.ro-ppss-empty span{font-size:42px;color:var(--ro-accent)}.ro-ppss-empty small{opacity:.65}.ro-ppss-meta{display:flex;justify-content:space-between;gap:10px;font-size:12px;opacity:.72;margin:12px 0}.ro-ppss-tip{border-left:3px solid var(--ro-accent2);background:color-mix(in srgb,var(--ro-accent2) 8%,var(--ro-card,#fff));padding:11px 13px;border-radius:0 9px 9px 0;font-size:12px}.ro-ppss-footer{display:grid;gap:8px;margin-top:18px}.ro-ppss-footer details{border:1px solid var(--ro-border,#e0e7f0);border-radius:10px;background:var(--ro-card,#fff);padding:12px 15px}.ro-ppss-footer summary{font-weight:700;cursor:pointer;color:var(--ro-text,#172033)}.ro-ppss-footer p{margin:10px 0 0;color:var(--ro-text,#172033);opacity:.82;font-size:13px}.ro-ppss-credit{text-align:center;font-size:12px;opacity:.72;padding:7px}.ro-ppss-credit a{color:var(--ro-accent);font-weight:700;text-decoration:none}.ro-ppss[data-theme="dark"]{--ro-panel-bg:#101722;--ro-card:#182332;--ro-text:#edf4ff;--ro-border:#344355;--ro-input:#111b28;--ro-soft-button:#243244;--ro-canvas-bg:#202d3d;color:#edf4ff;background:#101722}.ro-ppss[data-theme="dark"] .ro-ppss-hero{color:var(--ro-title-color)}.ro-ppss[data-theme="dark"] .ro-ppss-hero h2,.ro-ppss[data-theme="dark"] .ro-ppss-hero p{color:var(--ro-title-color)}.ro-ppss[data-theme="dark"] .ro-ppss-card,.ro-ppss[data-theme="dark"] .ro-ppss-workspace,.ro-ppss[data-theme="dark"] .ro-ppss-footer details{background:var(--ro-card);color:var(--ro-text)}.ro-ppss[data-theme="dark"] .ro-ppss-card h3,.ro-ppss[data-theme="dark"] .ro-ppss-card label,.ro-ppss[data-theme="dark"] .ro-ppss-workspace-head h3,.ro-ppss[data-theme="dark"] .ro-ppss-footer summary,.ro-ppss[data-theme="dark"] .ro-ppss-footer p{color:var(--ro-text)}.ro-ppss[data-theme="dark"] .ro-ppss-card input,.ro-ppss[data-theme="dark"] .ro-ppss-card select,.ro-ppss[data-theme="dark"] .ro-ppss-theme select{background:#111b28;color:#edf4ff;border-color:#344355}.ro-ppss[data-theme="dark"] .ro-btn.secondary,.ro-ppss[data-theme="dark"] .ro-mode{background:#243244;color:#edf4ff!important;border-color:#3a4a5e}.ro-ppss[data-theme="dark"] .ro-mode.active{background:#183b58;color:#8ed7ff!important;border-color:var(--ro-accent2)}@media(max-width:900px){.ro-ppss-layout{grid-template-columns:1fr}.ro-ppss-controls{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.ro-ppss-workspace{grid-row:1}.ro-ppss-canvas-wrap{min-height:300px}}@media(max-width:620px){.ro-ppss{padding:10px;border-radius:12px}.ro-ppss-hero{padding:16px;flex-wrap:wrap;gap:10px}.ro-ppss-logo{width:42px;height:42px}.ro-ppss-theme{margin-left:0;width:100%;justify-content:flex-end}.ro-ppss-controls{grid-template-columns:1fr}.ro-ppss-workspace{padding:11px}.ro-ppss-workspace-head{align-items:flex-start;flex-direction:column}.ro-ppss-workspace-head .ro-btn{font-size:12px}.ro-ppss-canvas-wrap{min-height:260px;padding:8px}.ro-ppss-canvas-wrap canvas{max-height:60vh}.ro-ppss-meta{flex-direction:column;gap:3px}.ro-ppss-two{gap:8px}}

/* v1.0.1 interaction and contrast refinements */
.ro-ppss .ro-btn:not(.secondary):hover,.ro-ppss .ro-btn:not(.secondary):focus-visible{color:#fff!important;filter:brightness(.82) saturate(1.08);box-shadow:0 3px 12px color-mix(in srgb,var(--ro-accent) 28%,transparent)}
.ro-ppss .ro-btn.secondary:hover,.ro-ppss .ro-btn.secondary:focus-visible{background:var(--ro-soft-button,#edf2f8);color:var(--ro-text,#172033)!important;border-color:var(--ro-accent);filter:brightness(.96)}
.ro-ppss[data-theme="dark"] .ro-btn:not(.secondary):hover,.ro-ppss[data-theme="dark"] .ro-btn:not(.secondary):focus-visible{background:color-mix(in srgb,var(--ro-accent) 78%,#000);color:#fff!important}
.ro-ppss[data-theme="dark"] .ro-btn.secondary:hover,.ro-ppss[data-theme="dark"] .ro-btn.secondary:focus-visible{background:#2d4056;color:#f3f7ff!important}
.ro-ppss #ro-ppss-photo-tools h4{margin:14px 0 6px;font-size:14px;color:var(--ro-text,#172033)}
.ro-ppss #ro-ppss-photo-tools hr{border:0;border-top:1px solid var(--ro-border,#d9e1ec);margin:14px 0}
.ro-ppss #ro-ppss-photo-tools small{color:var(--ro-text,#172033);opacity:.75}
