.story-creator{flex-direction:column;gap:20px;width:min(95%,760px);margin:32px auto 0;display:flex}.story-creator-card{background:var(--bg-alt);border:1px solid var(--border);border-radius:16px;flex-direction:column;align-items:center;gap:12px;padding:28px 24px;display:flex}.story-creator-title{color:var(--text);letter-spacing:-.02em;text-align:center;margin:0;font-size:1.5rem;font-weight:700}.story-creator-subtitle{color:var(--text-alt);text-align:center;text-wrap:balance;max-width:560px;margin:-4px 0 4px;font-size:.9375rem}.story-signin-btn{background:var(--accent);color:var(--text-inverse,#fff);border-radius:12px;margin-top:6px;padding:12px 24px;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-block}.story-signin-btn:hover{opacity:.9}.worker-status{color:var(--text-muted);align-items:center;gap:6px;font-size:.85rem;display:flex}.worker-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.worker-dot.online{background:#22c55e;box-shadow:0 0 4px #22c55e88}.worker-queue{color:var(--text-muted);opacity:.7}.offline-notice{background:var(--bg);border:1px solid var(--border);text-align:center;border-radius:12px;width:100%;padding:20px 16px}.offline-notice-title{color:var(--text);margin:0 0 6px;font-size:.9375rem;font-weight:600}.offline-notice-sub{color:var(--text-muted);margin:0;font-size:.8125rem}.upload-form{flex-direction:column;gap:12px;width:100%;display:flex}.text-input{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);box-sizing:border-box;resize:vertical;border-radius:10px;outline:none;padding:12px 14px;font-family:inherit;font-size:.9375rem}.text-input::placeholder{color:var(--text-muted)}.text-input:focus{border-color:var(--focus)}.file-area{border:2px dashed var(--border);text-align:center;cursor:pointer;border-radius:12px;padding:24px 16px;transition:border-color .15s,background .15s}.file-area:hover,.file-area.drag-over{border-color:var(--accent);background:var(--hover)}.file-label{cursor:pointer;color:var(--text-alt);flex-direction:column;align-items:center;gap:8px;font-size:.9rem;display:flex}.file-icon{font-size:1.75rem;display:inline-flex}.file-input{display:none}.file-preview{object-fit:contain;border-radius:8px;width:100%;max-height:280px}.file-preview-wrap{cursor:pointer;position:relative}.file-remove{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:14px;line-height:1;display:flex;position:absolute;top:4px;right:4px}.quality-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.quality-label{color:var(--text-alt);font-size:.875rem}.quality-segment{background:var(--bg);border:1px solid var(--border);border-radius:10px;gap:3px;padding:3px;display:inline-flex}.quality-option{color:var(--text-alt);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:7px 16px;font-size:.875rem;font-weight:500;transition:background .15s,color .15s}.quality-option[aria-pressed=true]{background:var(--accent);color:var(--text-inverse,#fff)}.quality-time{color:var(--text-muted);font-size:.8125rem}.submit-btn{background:var(--accent);width:100%;height:48px;color:var(--text-inverse,#fff);cursor:pointer;border:none;border-radius:12px;font-size:.9375rem;font-weight:600;transition:opacity .15s}.submit-btn:not(:disabled):hover{opacity:.9}.submit-btn:disabled{opacity:.4;cursor:not-allowed}.error-msg{background:var(--error-bg);border:1px solid var(--error);width:100%;color:var(--error);text-align:center;box-sizing:border-box;border-radius:10px;padding:12px 16px;font-size:.875rem}.story-cards{flex-direction:column;gap:12px;width:100%;display:flex}.story-card{background:var(--bg-alt);border:1px solid var(--border);box-sizing:border-box;border-radius:12px;grid-template-columns:200px 1fr auto;align-items:start;gap:14px;max-width:100%;padding:14px;display:grid}@media (width<=640px){.story-card{grid-template-columns:1fr}}.story-card.failed{border-color:var(--error);background:var(--error-bg)}.story-card-img-col{justify-content:center;align-items:flex-start;display:flex}.story-card-img-wrap{position:relative}.story-card-img{border-radius:8px;max-width:100%;max-height:200px;display:block}.story-card-body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.story-card-title{min-width:0;color:var(--text);text-wrap:balance;font-size:.9375rem;font-weight:600;display:block}.story-card-title-link{color:var(--text);cursor:pointer;text-decoration:none;transition:color .15s}.story-card-title-link:hover{color:var(--accent)}.story-card-img-link{border-radius:8px;transition:opacity .15s;display:inline-block}.story-card-img-link:hover{opacity:.85}.story-card-plot{color:var(--text-muted);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:.75rem;line-height:1.4;display:-webkit-box;overflow:hidden}.vis-trigger:focus-visible,.share-btn:focus-visible,.retry-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.toggle-chevron{border-bottom:1.5px solid;border-right:1.5px solid;flex-shrink:0;width:6px;height:6px;transition:transform .15s;display:inline-block;transform:rotate(45deg)}.toggle-chevron.open{transform:rotate(-135deg)}.story-card-status{color:var(--text-muted);overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;margin-top:4px;font-size:.8125rem;display:flex}.story-card-actions{flex-direction:column;flex-shrink:0;align-items:stretch;gap:10px;min-width:160px;display:flex}@media (width<=640px){.story-card-actions{min-width:0}}.progress-bar{background:var(--bg);border-radius:999px;width:100%;height:8px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:999px;height:100%;transition:width .4s}.failed-text{color:var(--error)}.retry-btn{background:var(--accent);color:var(--text-inverse,#fff);cursor:pointer;border:none;border-radius:10px;margin-top:4px;padding:8px 16px;font-size:.875rem;font-weight:600}.retry-btn:disabled{opacity:.5;cursor:not-allowed}.retry-error{font-size:.8125rem}.story-visibility{flex-direction:column;align-items:stretch;gap:6px;display:flex;position:relative}.nsfw-badge{background:var(--error);color:#fff;z-index:1;border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:700;position:absolute;top:6px;right:6px}.nsfw-badge.static{background:var(--error-bg);border:1px solid var(--error);color:var(--error);align-self:flex-start;position:static}.vis-trigger{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:.8125rem;font-weight:600;transition:border-color .15s,background .15s;display:flex}.vis-trigger:hover{border-color:var(--accent)}.vis-trigger:disabled{opacity:.5;cursor:not-allowed}.vis-trigger-text{flex-direction:column;align-items:flex-start;gap:1px;min-width:0;display:flex}.vis-trigger-caption{opacity:.8;font-size:.6875rem;font-weight:400;line-height:1.3}.vis-popover{z-index:10;background:var(--bg-alt);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:4px;min-width:170px;max-height:240px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);right:0;overflow-y:auto;box-shadow:0 8px 24px #0000002e}.vis-option{width:100%;color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:7px;flex-direction:column;align-items:flex-start;gap:1px;padding:7px 10px;font-size:.8125rem;font-weight:600;transition:background .15s,color .15s;display:flex}.vis-option-title{font-size:.8125rem;font-weight:600;line-height:1.3;display:block}.vis-option-caption{opacity:.8;font-size:.6875rem;font-weight:400;line-height:1.3;display:block}.vis-option[aria-selected=true]{background:var(--accent);color:var(--text-inverse,#fff)}.vis-option[aria-selected=true] .vis-option-caption{opacity:.85}.vis-option:not(:disabled):hover{background:var(--hover);color:var(--text)}.vis-option:disabled{opacity:.45;cursor:not-allowed}.share-row{flex-wrap:wrap;gap:8px;animation:.18s share-in;display:inline-flex}@keyframes share-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.share-btn{background:var(--bg);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:10px;padding:6px 14px;font-size:.8125rem;font-weight:600;transition:opacity .15s}.share-btn:hover{opacity:.85}.share-btn:disabled{opacity:.5;cursor:not-allowed}
