.sw-root{min-height:100vh;position:relative}.sw-lede{max-width:620px;margin-bottom:clamp(26px,4vw,40px)}.sw-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:clamp(14px,2vw,22px);display:grid}.sw-card{border:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(14px)saturate(1.25);border-radius:18px;flex-direction:column;gap:12px;padding:clamp(14px,2vw,20px);display:flex}.sw-card-head{align-items:center;gap:11px;display:flex}.sw-step{width:30px;height:30px;font-family:var(--head);color:var(--text);border:1px solid var(--line);background:#ffffff12;border-radius:9px;flex:none;place-items:center;font-size:12px;font-weight:700;display:grid}.sw-card-head b{font-family:var(--head);font-size:14px;font-weight:650;display:block}.sw-card-head i{color:var(--text-mute);font-size:11.5px;font-style:normal;display:block}.sw-frame{aspect-ratio:3/4;border:1px dashed var(--line);background:#ffffff08;border-radius:14px;place-items:center;width:100%;display:grid;position:relative;overflow:hidden}.sw-frame img{object-fit:cover;width:100%;height:100%}.sw-pick{cursor:pointer;color:inherit;padding:0;transition:border-color .18s,background .18s}.sw-pick:hover{background:#22d3ee0d;border-color:#22d3ee80}.sw-pick.filled{border-style:solid}.sw-empty{color:var(--text-mute);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:0 14px;font-size:12.5px;display:flex}.sw-empty svg{opacity:.7;width:26px;height:26px}.sw-wait{color:#aab4d4;text-align:center;background:radial-gradient(90% 72% at 50% 44%,#22d3ee1f,#0000 70%),linear-gradient(#16244a,#111838);flex-direction:column;justify-content:center;align-items:center;gap:16px;width:100%;height:100%;padding:0 12px;font-size:12.5px;display:flex}.sw-wait-lbl{max-width:26ch}.sw-result .sw-frame{border-style:solid}.sw-save{justify-content:center;width:100%}.sw-save:disabled{opacity:.5;cursor:not-allowed}.sw-controls{flex-wrap:wrap;align-items:center;gap:12px;margin-top:clamp(18px,3vw,26px);display:flex}.sw-wish{min-width:0;color:var(--text);background:var(--glass);border:1px solid var(--line);border-radius:12px;flex:320px;padding:12px 15px;font-size:13.5px}.sw-wish:focus{border-color:#22d3ee8c;outline:none}.sw-go:disabled{opacity:.55;cursor:not-allowed}.sw-err{color:#fde68a;background:#1e120899;border:1px solid #f59e0b66;border-radius:12px;margin-top:14px;padding:11px 15px;font-size:13px}.sw-note{color:var(--text-mute);margin-top:16px;font-size:12.5px;line-height:1.6}.sw-link{color:var(--cyan)}body.light .sw-link{color:#0e89a6}.sw-has{padding:0;position:relative}.sw-open{cursor:zoom-in;border-radius:inherit;background:0 0;border:0;width:100%;height:100%;padding:0;display:block;overflow:hidden}.sw-open img{object-fit:cover;width:100%;height:100%;display:block}.sw-zoom{width:32px;height:32px;color:var(--text);border:1px solid var(--line-2);-webkit-backdrop-filter:blur(6px);opacity:0;pointer-events:none;background:#0a0e22b8;border-radius:10px;place-items:center;transition:opacity .18s,transform .18s;display:grid;position:absolute;bottom:10px;right:10px;transform:translateY(4px)}.sw-zoom svg{width:16px;height:16px}.sw-has:hover .sw-zoom,.sw-open:focus-visible .sw-zoom{opacity:1;transform:none}.sw-swap-btn{z-index:2;cursor:pointer;font-family:var(--head);color:var(--text);border:1px solid var(--line-2);-webkit-backdrop-filter:blur(6px);opacity:0;background:#0a0e22b8;border-radius:10px;align-items:center;gap:6px;padding:7px 11px;font-size:12px;font-weight:600;transition:opacity .18s,transform .18s,border-color .18s;display:inline-flex;position:absolute;bottom:10px;left:10px;transform:translateY(4px)}.sw-swap-btn svg{width:14px;height:14px}.sw-swap-btn:hover{border-color:#22d3ee80}.sw-has:hover .sw-swap-btn,.sw-swap-btn:focus-visible{opacity:1;transform:none}@media (hover:none){.sw-swap-btn,.sw-zoom{opacity:1;transform:none}}.sw-lb{z-index:95;-webkit-backdrop-filter:blur(10px);background:#060816db;justify-content:center;align-items:center;padding:clamp(14px,3vw,32px);animation:.22s both sw-lb-in;display:flex;position:fixed;inset:0}@keyframes sw-lb-in{0%{opacity:0}to{opacity:1}}.sw-lb-box{border:1px solid var(--line-2);background:#0e1228fa;border-radius:18px;flex-direction:column;gap:12px;width:min(720px,100%);max-height:calc(100vh - 48px);padding:14px;animation:.34s cubic-bezier(.2,.9,.25,1.08) both sw-lb-pop;display:flex;box-shadow:0 24px 54px -18px #000c}@keyframes sw-lb-pop{0%{opacity:0;transform:translateY(14px)scale(.965)}to{opacity:1;transform:none}}.sw-lb-head{align-items:center;gap:10px;display:flex}.sw-lb-name{min-width:0;font-family:var(--head);color:var(--text);flex:1;font-size:14.5px;font-weight:700}.sw-lb-count{color:var(--text-mute);font-variant-numeric:tabular-nums;font-size:12px}.sw-lb-x{width:30px;height:30px;color:var(--text-dim);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;transition:color .14s,background .14s;display:grid}.sw-lb-x:hover{color:var(--text);background:#ffffff0f}.sw-lb-x svg{width:15px;height:15px}.sw-lb-stage{place-items:center;min-height:0;display:grid;position:relative}.sw-lb-img{border:1px solid var(--line);border-radius:14px;max-width:100%;max-height:calc(100vh - 230px);animation:.26s both sw-lb-img;display:block}@keyframes sw-lb-img{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}.sw-lb-nav{z-index:2;cursor:pointer;border:1px solid var(--line-2);width:38px;height:38px;color:var(--text);background:#0a0e22e6;border-radius:50%;font-size:22px;line-height:1;transition:background .14s,border-color .14s;position:absolute;top:50%;transform:translateY(-50%)}.sw-lb-nav.prev{left:8px}.sw-lb-nav.next{right:8px}.sw-lb-nav:hover{background:#22d3ee2e;border-color:#22d3ee80}.sw-lb-actions{justify-content:flex-end;display:flex}.sw-lb-save{justify-content:center;min-width:160px}body.light .sw-lb{background:#e4e9f5db}body.light .sw-lb-box{background:#fffffffa}body.light .sw-zoom,body.light .sw-swap-btn{background:#ffffffd1}body.light .sw-lb-nav{background:#ffffffeb}@media (prefers-reduced-motion:reduce){.sw-pick{transition:none}.sw-lb,.sw-lb-box,.sw-lb-img{animation:none}.sw-zoom,.sw-swap-btn{transition:none}}.sw-plates{border:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(14px)saturate(1.25);border-radius:18px;margin-top:clamp(18px,3vw,26px);padding:clamp(16px,2vw,22px)}.sw-plates-head b{font-family:var(--head);font-size:15px;font-weight:650;display:block}.sw-plates-head i{color:var(--text-mute);max-width:620px;margin-top:4px;font-size:12.5px;font-style:normal;line-height:1.6;display:block}.sw-plates-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-top:16px;display:grid}.sw-plate{border:1px solid var(--line);background:#ffffff05;border-radius:14px;flex-direction:column;gap:10px;padding:12px;transition:border-color .16s,background .16s;display:flex}.sw-plate.on{background:#22d3ee0f;border-color:#22d3ee73}.sw-plate-chip{cursor:pointer;text-align:left;width:100%;color:var(--text-dim);background:0 0;border:0;align-items:center;gap:9px;padding:0;transition:color .16s;display:flex}.sw-plate-chip:hover,.sw-plate.on .sw-plate-chip{color:var(--text)}.sw-plate-mark{width:24px;height:24px;color:var(--text-mute);background:var(--field);border:1px solid var(--line);border-radius:8px;flex:none;place-items:center;font-size:13px;font-weight:700;line-height:1;transition:color .16s,background .16s,border-color .16s;display:grid}.sw-plate.on .sw-plate-mark{color:#06202a;background:var(--cyan);border-color:var(--cyan)}.sw-plate-name{font-family:var(--head);font-size:13.5px;font-weight:650}.sw-plate-was{color:var(--text-mute);text-overflow:ellipsis;white-space:nowrap;max-width:45%;margin-left:auto;font-size:11.5px;overflow:hidden}.sw-plate-fields{gap:8px;display:flex}.sw-plate-field{flex-direction:column;flex:auto;gap:5px;min-width:0;display:flex}.sw-plate-field.short{flex:0 0 96px}.sw-plate-field span{letter-spacing:.02em;text-transform:uppercase;color:var(--text-mute);font-size:11px;font-weight:600}.sw-plate-field input{width:100%;color:var(--text);background:var(--glass);border:1px solid var(--line);border-radius:11px;padding:10px 12px;font-size:13px}.sw-plate-field input:focus{border-color:#22d3ee8c;outline:none}.sw-plate-field input::placeholder{color:#ffffff47}body.light .sw-plate-field input::placeholder{color:#14182852}.sw-plates-note{color:var(--text-mute);margin:16px 0 0;font-size:12.5px;line-height:1.6}@media (max-width:520px){.sw-plate-was{display:none}}.sw-edit-link{text-align:center;color:var(--cyan);margin-top:8px;font-size:12.5px;text-decoration:none;display:block}.sw-edit-link:hover{text-decoration:underline}
