.friend-add-shortcut {
  width: 100%;
  margin: 8px 0 12px;
  padding: 10px 12px;
  border: 1px solid #e8e8e8;
  border-radius: 14px;
  background: #fff;
  color: #222;
  font: 600 9px/1.2 var(--font-family);
  text-align: left;
  cursor: pointer;
}

.found-account { margin-top: 10px; }

.found-profile {
  display: grid;
  grid-template-columns: 38px 1fr auto;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border: 1px solid #e9e9e9;
  border-radius: 16px;
  background: #fff;
  text-align: left;
}

.found-profile .friend-avatar {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  overflow: hidden;
  background: #f0f0f0;
  display: grid;
  place-items: center;
  font-size: 13px;
  font-weight: 700;
}

.found-profile .friend-avatar img { width: 100%; height: 100%; object-fit: cover; }
.found-profile strong, .found-profile small { display: block; max-width: 105px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.found-profile strong { font-size: 9px; color: #171717; }
.found-profile small { margin-top: 3px; font-size: 7px; color: #888; }
.found-profile button { border: 0; border-radius: 12px; background: #171717; color: #fff; padding: 8px 10px; font: 600 7px/1 var(--font-family); cursor: pointer; }
.found-profile button:disabled { opacity: .55; }
#friendActionStatus[data-state="error"] { color: #a23d3d; }
#friendActionStatus[data-state="success"] { color: #287246; }

.social-tabs { grid-template-columns: repeat(4, 1fr); }
.social-tabs button { padding-inline: 3px; font-size: 7px; }
.create-group-button, .builder-primary { width: 100%; border: 0; border-radius: 14px; background: #171717; color: #fff; padding: 12px; font: 600 9px/1 var(--font-family); cursor: pointer; }
.group-list { display: grid; gap: 8px; margin-top: 12px; }
.group-row { width: 100%; display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 10px; border: 0; border-bottom: 1px solid #eee; background: transparent; padding: 9px 2px; text-align: left; cursor: pointer; }
.group-mark { width: 42px; height: 42px; border-radius: 15px; display: grid; place-items: center; background: #181818; color: #fff; font: 600 12px/1 var(--font-family); }
.group-row strong, .group-row small { display: block; }
.group-row strong { font-size: 10px; }.group-row small { margin-top: 4px; color: #999; font-size: 7px; }.group-row time { color: #aaa; font-size: 7px; }
.group-builder, .group-settings { position: absolute; inset: 0; z-index: 8; background: #f7f7f5; padding: 18px; transform: translateX(105%); transition: transform .28s ease; overflow-y: auto; }
.group-builder.open, .group-settings.open { transform: translateX(0); }
.group-builder header, .group-settings header { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; }
.group-builder header button, .group-settings header button { width: 34px; height: 34px; border: 0; border-radius: 50%; background: #fff; font-size: 15px; }
.group-builder header span, .group-settings header span { display: block; color: #999; font-size: 7px; letter-spacing: .15em; }.group-builder header strong, .group-settings header strong { display: block; margin-top: 3px; font-size: 16px; }
.group-name-field span, .builder-label { display: block; margin: 16px 0 8px; color: #8e8e8e; font: 600 7px/1 var(--font-family); letter-spacing: .12em; }
.group-name-field input, .char-editor input, .char-editor textarea { box-sizing: border-box; width: 100%; border: 1px solid #e6e6e3; border-radius: 14px; background: #fff; padding: 12px; outline: 0; font: 9px/1.5 var(--font-family); }
.builder-friends { display: grid; gap: 7px; margin-bottom: 16px; }.builder-friend { display: flex; align-items: center; gap: 10px; padding: 9px; border-radius: 14px; background: #fff; font-size: 9px; }.builder-friend input { margin-left: auto; accent-color: #171717; }
.builder-status, .char-note { color: #898989; font-size: 7px; line-height: 1.5; }.builder-status[data-state="error"] { color: #a23d3d; }
.char-editor textarea { margin: 8px 0; resize: vertical; }.character-row { display: flex; align-items: center; gap: 9px; padding: 9px; margin-bottom: 7px; border-radius: 14px; background: #fff; }.character-row strong, .character-row small { display: block; }.character-row small { color: #999; font-size: 7px; margin-top: 3px; }
.char-mention-strip { padding: 5px 12px; overflow-x: auto; white-space: nowrap; border-top: 1px solid #eee; background: rgba(255,255,255,.86); }.char-mention-strip button { margin-right: 5px; padding: 5px 8px; border: 1px solid #e8e8e8; border-radius: 12px; background: #fff; font: 7px/1 var(--font-family); }
.message.character { background: #f0f0ed; border: 1px solid #e4e4df; }.message .message-author { display: block; margin-bottom: 4px; font-size: 7px; font-weight: 700; color: #777; }
.request-section-label { margin: 14px 0 7px; color: #999; font: 600 7px/1 var(--font-family); letter-spacing: .12em; }
.group-invite-row { display: grid; grid-template-columns: 40px 1fr auto; align-items: center; gap: 9px; padding: 9px 2px; border-bottom: 1px solid #eee; }
.group-invite-row strong,.group-invite-row small { display:block }.group-invite-row strong{font-size:9px}.group-invite-row small{margin-top:3px;color:#999;font-size:7px}.group-invite-row button{border:0;border-radius:11px;background:#171717;color:#fff;padding:7px 9px;font:600 7px/1 var(--font-family)}
#charDecisionStatus[data-state="loading"]{color:#555}#charDecisionStatus[data-state="declined"]{color:#a15b3a}#charDecisionStatus[data-state="accepted"]{color:#287246}
.character-studio { overflow-y:auto; padding:8px 2px 24px }.character-studio h2{font-size:22px;margin:6px 0}.studio-intro{color:#888;font-size:9px;line-height:1.5}.character-library,.own-char-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.library-char,.invite-char{position:relative;border:1px solid #e8e8e5;border-radius:16px;background:#fff;padding:12px 5px;text-align:center;cursor:pointer}.char-avatar-letter{width:42px;height:42px;margin:0 auto 7px;border-radius:50%;display:grid;place-items:center;background:#171717;color:#fff;font-size:14px}.library-char strong,.invite-char strong{display:block;font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-char small{display:block;margin-top:3px;color:#999;font-size:6px}.library-char .remove-library-char{position:absolute;right:5px;top:5px;width:18px;height:18px;border:0;border-radius:50%;background:#eee;color:#555;font-size:10px}.studio-form{display:grid;gap:8px}.studio-form input,.studio-form textarea,.css-editor{box-sizing:border-box;width:100%;border:1px solid #e4e4e1;border-radius:14px;background:#fff;padding:11px;outline:0;resize:vertical;font:8px/1.5 var(--font-family)}.studio-form button{border:0;border-radius:14px;background:#171717;color:#fff;padding:11px;font:600 8px/1 var(--font-family)}#studioStatus{font-size:7px;color:#888}.character-row .char-remove{margin-left:auto;border:0;border-radius:10px;background:#eee;padding:6px 8px;font-size:7px}.settings-button-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.settings-button-row button,.danger-soft{border:1px solid #e3e3df;border-radius:12px;background:#fff;padding:10px;font:600 8px/1 var(--font-family)}.danger-soft{width:100%;margin-top:18px;color:#9d3c3c;border-color:#ecdada}.css-editor{min-height:105px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:7px}
.code-actions{display:grid;gap:4px}.code-actions button{font-size:6px!important;padding:6px!important}.privacy-settings{position:absolute;inset:0;z-index:10;background:#f7f7f5;padding:18px;transform:translateX(105%);transition:transform .28s ease}.privacy-settings.open{transform:translateX(0)}.privacy-settings header{display:flex;align-items:center;gap:12px;margin-bottom:28px}.privacy-settings header button{width:34px;height:34px;border:0;border-radius:50%;background:#fff}.privacy-settings header span,.privacy-settings label span{display:block;color:#999;font-size:7px;letter-spacing:.12em}.privacy-settings header strong{display:block;margin-top:3px;font-size:17px}.privacy-settings label{display:block;margin-bottom:15px}.privacy-settings select{box-sizing:border-box;width:100%;margin-top:7px;border:1px solid #e3e3df;border-radius:13px;background:#fff;padding:11px;font:8px/1 var(--font-family)}.rotate-code{width:100%;margin-top:8px;border:0;border-radius:14px;background:#171717;color:#fff;padding:12px;font:600 8px/1 var(--font-family)}#privacyStatus{font-size:7px;line-height:1.5;color:#888}#privacyStatus[data-state="error"]{color:#a23d3d}#privacyStatus[data-state="success"]{color:#287246}
.message-actions{position:absolute;z-index:12;left:50%;bottom:72px;transform:translateX(-50%);display:flex;gap:2px;padding:4px;border-radius:14px;background:#171717;box-shadow:0 8px 24px rgba(0,0,0,.18)}.message-actions[hidden]{display:none}.message-actions button{border:0;background:transparent;color:#fff;padding:8px 10px;font:600 8px/1 var(--font-family)}.message-translation{display:block;margin-top:7px;padding-top:7px;border-top:1px solid currentColor;opacity:.68;font-size:8px;line-height:1.55}.message-translating{opacity:.55}

/* Default chat — monochrome night */
.social-app .chat-room{grid-template-rows:88px 0 minmax(0,1fr) 72px;background:#202020;color:#ededeb;padding-left:16px;padding-right:16px}
.chat-room .message-day{display:none}
.chat-room .chat-person{grid-template-columns:40px 38px minmax(0,1fr) 40px;gap:10px;height:88px;padding:0 2px;border-bottom:1px solid #393939}
.chat-room .chat-person>button{width:38px;height:38px;border-radius:50%;background:transparent;color:#ededeb}
.chat-room .chat-person>button svg{width:19px;height:19px;fill:#ededeb}
.chat-room .chat-person>.friend-avatar{width:38px;height:38px;align-self:center;border:1px solid #555;background:#e3e3df;color:#252525;font-size:11px}
.chat-room .chat-person>div:nth-of-type(2){min-width:0;align-self:center;text-align:left}
.chat-room .chat-person>div:nth-of-type(2) strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f1f1ef;font-size:12px;font-weight:500;letter-spacing:.02em}
.chat-room .chat-person>div:nth-of-type(2) span{margin-top:4px;color:#777;font-size:7px;letter-spacing:.1em;text-transform:uppercase}
.chat-room .message-list{padding:20px 4px 22px;gap:0;scrollbar-width:none}
.chat-room .message-list::-webkit-scrollbar{display:none}
.chat-room .message-row{width:100%;display:flex;align-items:flex-end;gap:9px;margin:0 0 13px}
.chat-room .message-row.mine{justify-content:flex-end}
.chat-room .message-avatar{position:relative;width:27px;height:27px;flex:0 0 27px;overflow:hidden;border-radius:50%;display:grid;place-items:center;background:#e4e4e0;color:#252525;font-size:8px;font-weight:600}
.chat-room .message-avatar img{width:100%;height:100%;object-fit:cover}
.chat-room .message{max-width:76%;padding:0 0 0 12px;border:0;border-left:1px solid #5e5e5e;border-radius:0;background:transparent;color:#e7e7e5;box-shadow:none;font-size:10px;line-height:1.58}
.chat-room .message.mine{align-self:auto;padding:0 12px 0 0;border:0;border-right:1px solid #a8a8a4;border-radius:0;background:transparent;color:#f3f3f1}
.chat-room .message.character{background:transparent;border-top:0;border-bottom:0;border-right:0;border-left:1px solid #777;color:#e7e7e5}
.chat-room .message time{margin-top:5px;color:#777;font-size:6px;letter-spacing:.08em;opacity:1}
.chat-room .message.mine time{text-align:right}
.chat-room .message-author{margin-bottom:5px!important;color:#8b8b87!important;font-size:6px!important;font-weight:500!important;letter-spacing:.12em}
.chat-room .message-time-divider{width:100%;display:flex;align-items:center;gap:10px;margin:20px 0;color:#696969;font-size:6px;letter-spacing:.15em}
.chat-room .message-time-divider:before,.chat-room .message-time-divider:after{content:"";height:1px;flex:1;background:#373737}
.chat-room .message-composer{align-self:center;height:48px;padding:0 7px 0 12px;border:1px solid #efefec;border-radius:16px;background:#e7e7e4;display:grid;grid-template-columns:28px 1fr 33px;gap:7px;box-shadow:0 10px 28px rgba(0,0,0,.35)}
.chat-room .message-composer button{width:26px;height:26px;border:1px solid #bfbfbb;border-radius:50%;background:transparent;color:#666;display:grid;place-items:center;font-size:16px;font-weight:300}
.chat-room .message-composer button:last-child{width:32px;height:32px;border:0;background:#292929;color:#eee}
.chat-room .message-composer button:last-child svg{width:15px;height:15px}
.chat-room .message-composer textarea{padding:10px 3px;border:0;background:transparent;color:#202020;font-size:16px;line-height:1.35}
.chat-room .message-composer textarea::placeholder{color:#8c8c88;font-size:10px}
.privacy-choice{margin-bottom:18px}.privacy-choice>span{display:block;margin-bottom:8px;color:#8d8d8d;font-size:7px;letter-spacing:.1em}.privacy-option-list{display:grid;gap:7px}.privacy-option-list button{display:grid;grid-template-columns:1fr;gap:3px;width:100%;padding:10px 12px;border:1px solid #e5e5e1;border-radius:14px;background:#fff;color:#242424;text-align:left;transition:.18s}.privacy-option-list button strong{font:600 9px/1.2 var(--font-family)}.privacy-option-list button small{color:#999;font:7px/1.4 var(--font-family)}.privacy-option-list button.selected{border-color:#171717;background:#171717;color:#fff;box-shadow:0 7px 18px rgba(0,0,0,.1)}.privacy-option-list button.selected small{color:#bdbdbd}.api-settings select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,#777 50%),linear-gradient(135deg,#777 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 10px) 50%;background-size:4px 4px,4px 4px;background-repeat:no-repeat;padding-right:28px}
.native-select-hidden{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.pretty-select{position:relative;width:100%;z-index:1}.pretty-select.open{z-index:30}.pretty-select-trigger{box-sizing:border-box;width:100%;min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #e3e3df;border-radius:13px;background:#fff;padding:10px 12px;color:#222;text-align:left;font:500 8px/1.2 var(--font-family);box-shadow:0 2px 8px rgba(0,0,0,.025)}.pretty-select-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pretty-select-trigger i{width:7px;height:7px;flex:0 0 auto;border-right:1.3px solid #777;border-bottom:1.3px solid #777;transform:rotate(45deg) translateY(-2px);transition:.18s}.pretty-select.open .pretty-select-trigger{border-color:#bdbdb8;box-shadow:0 6px 18px rgba(0,0,0,.07)}.pretty-select.open .pretty-select-trigger i{transform:rotate(225deg) translate(-2px,-1px)}.pretty-select-menu{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:40;max-height:190px;overflow:auto;padding:5px;border:1px solid #e3e3df;border-radius:15px;background:rgba(255,255,255,.98);box-shadow:0 16px 36px rgba(0,0,0,.13);backdrop-filter:blur(12px)}.pretty-select-menu[hidden]{display:none}.pretty-select-menu button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;border-radius:10px;background:transparent;padding:9px 10px;color:#333;text-align:left}.pretty-select-menu button strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 8px/1.2 var(--font-family)}.pretty-select-menu button>span{font-size:8px}.pretty-select-menu button:hover{background:#f2f2ef}.pretty-select-menu button.selected{background:#171717;color:#fff}.preset-box,.model-row label{overflow:visible}.api-settings{overflow:visible}
