.settings-page{max-width:1200px;margin:0 auto;padding:0 48px 80px}.settings-title{font-family:var(--font-display);color:var(--color-text);margin-bottom:36px;font-size:26px;font-weight:800}.settings-section{margin-bottom:24px}.greeting-list{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.greeting-item{background:var(--color-bg-sub);border-radius:var(--radius-xs);justify-content:space-between;align-items:center;padding:10px 14px;transition:background .2s;display:flex}.greeting-item:hover{background:#ede8e3}.greeting-text{font-family:var(--font-body);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:500;overflow:hidden}.greeting-delete{color:var(--color-text-3);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:50%;flex-shrink:0;padding:2px 6px;font-size:14px;line-height:1;transition:all .2s}.greeting-item:hover .greeting-delete{opacity:1}.greeting-delete:hover{color:var(--color-rose);background:var(--color-rose-soft)}.greeting-add-row{align-items:flex-end;gap:12px;display:flex}.greeting-add-row .field-input{flex:1}.greeting-add-row .btn-warm:disabled{opacity:.45;pointer-events:none}.flomo-row{align-items:flex-end;gap:12px;display:flex}.flomo-row .field-input{flex:1}.image-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;display:grid}.image-thumb{aspect-ratio:1;border-radius:var(--radius-sm);background:var(--color-bg-sub);position:relative;overflow:hidden}.image-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .3s var(--ease-spring)}.image-thumb:hover img{transform:scale(1.05)}.image-thumb-delete{color:#fff;cursor:pointer;opacity:0;background:#0000008c;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;transition:opacity .2s;display:flex;position:absolute;top:6px;right:6px}.image-thumb:hover .image-thumb-delete{opacity:1}.image-thumb-delete:hover{background:var(--color-rose)}.image-thumb-tag{color:#fff;font-size:10px;font-family:var(--font-mono);background:#00000080;border-radius:3px;padding:1px 4px;position:absolute;bottom:4px;left:4px}.image-upload-controls{flex-direction:column;align-items:center;gap:6px;display:flex}.device-type-select{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);cursor:pointer;border-radius:6px;padding:4px 6px;font-size:12px}.image-upload-trigger{aspect-ratio:1;border-radius:var(--radius-sm);background:var(--color-bg-sub);cursor:pointer;color:var(--color-text-3);font-family:var(--font-body);border:2px dashed #2b2d4214;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:500;transition:all .25s;display:flex}.image-upload-trigger:hover{border-color:var(--color-coral);color:var(--color-coral);background:var(--color-coral-soft)}.audio-upload-row{align-items:flex-end;gap:12px;margin-bottom:20px;display:flex}.audio-upload-row .field-input{flex:1}.audio-file-label{cursor:pointer;white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.audio-file-label input[type=file]{display:none}.audio-list{flex-direction:column;gap:8px;display:flex}.audio-item{background:var(--color-bg-sub);border-radius:var(--radius-xs);justify-content:space-between;align-items:center;padding:12px 16px;transition:background .2s;display:flex}.audio-item:hover{background:#ede8e3}.audio-item-info{align-items:center;gap:10px;min-width:0;display:flex}.audio-item-icon{background:var(--color-sage-soft);width:28px;height:28px;color:var(--color-sage);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.audio-item-label{font-family:var(--font-body);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.audio-item-delete{color:var(--color-text-3);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex}.audio-item-delete:hover{color:var(--color-rose);background:var(--color-rose-soft)}.settings-empty{text-align:center;font-family:var(--font-body);color:var(--color-text-3);padding:32px 0;font-size:13px}@media (max-width:900px){.settings-page{padding:0 24px 60px}.flomo-row,.audio-upload-row,.greeting-add-row{flex-direction:column;align-items:stretch}}@media (max-width:600px){.settings-page{padding:0 16px 48px}.image-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}}
