.rws-card {
    max-width: 680px;
    margin: 2rem auto;
    padding: 2rem;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(0,0,0,.08), 0 2px 8px rgba(0,0,0,.04);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.rws-header { text-align: center; margin-bottom: 1.5rem; }
.rws-title { font-size: 1.5rem; font-weight: 700; margin: 0 0 .35rem; color: #1a1a1a; }
.rws-subtitle { font-size: .875rem; color: #6b7280; margin: 0; }

.rws-tabs {
    display: flex;
    gap: .5rem;
    background: #f3f4f6;
    padding: .3rem;
    border-radius: 12px;
    margin-bottom: 1.5rem;
}
.rws-tab {
    flex: 1;
    padding: .65rem 1rem;
    border: none;
    background: transparent;
    border-radius: 9px;
    font-size: .9rem;
    font-weight: 500;
    color: #6b7280;
    cursor: pointer;
    transition: all .2s;
}
.rws-tab--active { background: #fff; color: #111827; box-shadow: 0 1px 3px rgba(0,0,0,.08); }

.rws-panel { display: none; }
.rws-panel--active { display: block; }

.rws-dropzone {
    border: 2px dashed #d1d5db;
    border-radius: 12px;
    padding: 3rem 1.5rem;
    text-align: center;
    cursor: pointer;
    transition: border-color .2s, background .2s;
    color: #9ca3af;
    background: #fafafa;
}
.rws-dropzone:hover, .rws-dropzone--over { border-color: #6366f1; background: #f5f3ff; color: #6366f1; }
.rws-dropzone__icon { margin-bottom: .75rem; }
.rws-dropzone__text { font-size: .95rem; font-weight: 500; margin: 0 0 .25rem; color: #374151; }
.rws-dropzone__hint { font-size: .8rem; margin: 0; color: #9ca3af; }

.rws-preview { text-align: center; margin-top: 1rem; }
.rws-preview__img { max-width: 100%; max-height: 260px; border-radius: 8px; border: 1px solid #e5e7eb; box-shadow: 0 2px 8px rgba(0,0,0,.05); }
.rws-preview .rws-btn { margin-top: .75rem; }

.rws-input-group { margin: 1.5rem 0 0; text-align: left; }
.rws-label { display: block; font-size: .875rem; color: #4b5563; margin-bottom: .5rem; font-weight: 500; }
.rws-input {
    width: 100%;
    padding: .75rem 1rem;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: .95rem;
    color: #1f2937;
    transition: border-color .2s, box-shadow .2s;
    box-sizing: border-box;
}
.rws-input:focus { outline: none; border-color: #6366f1; box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15); }

/* 新增：多行文本样式 */
.rws-textarea {
    resize: vertical;
    min-height: 100px;
    font-family: inherit;
    line-height: 1.5;
}

/* 新增：密码警告提示 */
.rws-hint-text {
    font-size: .75rem;
    color: #b91c1c;
    margin-top: .5rem;
}

.rws-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: .7rem 1.5rem;
    border: none;
    border-radius: 10px;
    font-size: .9rem;
    font-weight: 600;
    cursor: pointer;
    transition: all .2s;
}
.rws-btn:disabled { opacity: .5; cursor: not-allowed; }
.rws-btn--primary { background: #6366f1; color: #fff; }
.rws-btn--primary:hover:not(:disabled) { background: #4f46e5; }
.rws-btn--secondary { background: #f3f4f6; color: #374151; }
.rws-btn--secondary:hover { background: #e5e7eb; }

.rws-actions { text-align: center; margin-top: 1.5rem; }

.rws-status {
    margin-top: 1rem;
    padding: .75rem 1rem;
    border-radius: 8px;
    font-size: .875rem;
    text-align: center;
}
.rws-status--info { background: #eff6ff; color: #1d4ed8; }
.rws-status--success { background: #ecfdf5; color: #047857; }
.rws-status--error { background: #fef2f2; color: #b91c1c; }

.rws-result { margin-top: 1rem; text-align: center; background: #f9fafb; padding: 1rem; border-radius: 8px; border: 1px solid #e5e7eb; }
.rws-result__label { font-size: .875rem; color: #6b7280; margin: 0 0 .5rem; }
.rws-result__content {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 1rem;
    text-align: left;
    font-size: .9rem;
    white-space: pre-wrap;
    word-break: break-word;
    margin: 0;
    max-height: 200px;
    overflow-y: auto;
    color: #111827;
    font-family: monospace;
}