.community-page {display:grid;grid-template-columns:minmax(0,1fr);gap:24px;width:100%;min-width:0;}
.community-page .settings-card {max-width:100%;min-width:0;margin:0;}
.community-notice,.friend-code-card {padding:24px;border:1px solid #dce2d2;border-radius:14px;background:#eef1e7;color:#56634b;line-height:1.7;}
.friend-code-card h2 {margin-top:0;}
.friend-code-line {display:flex;align-items:center;flex-wrap:wrap;gap:16px;}
.friend-code-line code {font-size:clamp(17px,2.3vw,27px);letter-spacing:1.4px;color:#35432e;overflow-wrap:anywhere;}
.community-form {display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;margin:20px 0;}
.community-form .field {flex:1 1 230px;margin:0;}
.community-form .btn {flex:none;min-height:42px;}
.friend-code-card details {margin-top:16px;}
.friend-discovery-option {display:flex;gap:10px;align-items:flex-start;flex:1 1 100%;line-height:1.6;font-size:13px;}
.friend-discovery-option input {width:18px;height:18px;flex:none;margin-top:3px;accent-color:#667a56;}
.friend-discovery-option small {display:block;color:#7f8874;}
.friend-discovery-status {margin-top:16px;}
.friend-search-modes {display:flex;gap:8px;flex-wrap:wrap;margin-top:18px;}
.friend-search-modes [aria-pressed="true"] {background:#e8eddf;border-color:#7a8d6b;color:#405636;}
.friend-result-state {font-size:12px;color:#607653;padding:10px;}
[data-social="name-more"] {margin-top:16px;}
.community-page summary {cursor:pointer;font-weight:500;}
.friend-section {min-width:0;}
.friend-card {display:flex;align-items:center;flex-wrap:wrap;gap:16px;background:var(--paper,#fffefa);border:1px solid #e4e3d9;border-radius:12px;padding:20px;margin-top:12px;}
.friend-avatar {display:grid;place-items:center;width:45px;height:45px;flex:none;border-radius:50%;background:#e9eddf;color:#526446;font:24px Georgia,serif;}
.friend-info {flex:1 1 150px;min-width:0;}
.friend-info h3 {font:22px Georgia,serif;overflow-wrap:anywhere;margin:0 0 7px;}
.friend-info p {font-size:12px;color:#828775;margin:0;line-height:1.6;}
.friend-actions {display:flex;gap:8px;flex-wrap:wrap;}
.community-empty {padding:24px;border:1px dashed #dddccf;border-radius:12px;color:#828775;}
.admin-table-wrap {overflow-x:auto;max-width:100%;margin:20px 0;}
.admin-table {width:100%;border-collapse:collapse;font-size:12px;line-height:1.6;}
.admin-table th,.admin-table td {padding:14px 12px;text-align:left;border-bottom:1px solid #e4e3da;vertical-align:top;}
.admin-table th {color:#66755a;font-weight:500;white-space:nowrap;}
.admin-table code {font-size:10px;overflow-wrap:anywhere;}
.admin-table td small {display:block;color:#94664c;}
.admin-table td:first-child {overflow-wrap:anywhere;}
.sharing-settings>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;font:24px Georgia,serif;list-style:none;}
.sharing-settings>summary small{display:block;margin-top:8px;color:var(--muted);font:12px "DM Sans",sans-serif;line-height:1.6;}
.sharing-settings>summary svg{transition:transform .2s;flex:none;}
.sharing-settings[open]>summary svg{transform:rotate(90deg);}
.sharing-settings>p{font-size:13px;line-height:1.7;}
.sharing-options,.sharing-profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0;}
.sharing-options .field,.sharing-profile-fields .field{margin:0;min-width:0;}
.sharing-options select,.sharing-profile-fields select,.sharing-profile-fields input{width:100%;}
.share-book-management{margin-top:26px;border-top:1px solid var(--line);padding-top:20px;}
.share-book-choice,.suggest-book-option{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);}
.share-book-choice>div:first-child,.suggest-book-option>div{min-width:0;}
.share-book-choice strong,.suggest-book-option strong{display:block;font-weight:500;overflow-wrap:anywhere;}
.share-book-choice small,.suggest-book-option small{display:block;color:var(--muted);font-size:11px;margin-top:6px;line-height:1.5;}
.share-book-switches{flex:none;display:grid;gap:10px;font-size:12px;}
.share-book-switches label{display:flex;align-items:center;gap:8px;}
.share-book-switches input{width:18px;height:18px;accent-color:var(--green);}
.shared-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:20px 0;font-size:12px;color:var(--muted);}
.reader-friend-hero{display:flex;align-items:center;gap:24px;background:var(--green-light);padding:30px;border:1px solid var(--line);border-radius:16px;}
.reader-avatar{display:grid;place-items:center;width:82px;height:82px;border-radius:50%;background:var(--paper);color:var(--green);font:38px Georgia,serif;flex:none;}
.reader-avatar svg{width:34px;height:34px;}
.reader-friend-hero h2{font:32px Georgia,serif;margin:4px 0 12px;overflow-wrap:anywhere;}
.reader-friend-hero p{font-size:13px;color:var(--muted);line-height:1.6;}
.shared-genres{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.shared-genres span{border:1px solid #d6dfcc;border-radius:24px;padding:7px 12px;background:var(--paper);font-size:12px;color:var(--green);}
.shared-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 22px;}
.shared-tabs button{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:30px;background:var(--paper);padding:12px 16px;color:var(--muted);font-size:13px;}
.shared-tabs button[aria-pressed="true"]{background:var(--green-light);border-color:var(--green);color:var(--green);}
.shared-tabs span{background:var(--bg);padding:2px 6px;border-radius:12px;font-size:11px;}
.shared-books{display:grid;gap:18px;}
.shared-book,.shared-suggestion{display:flex;align-items:flex-start;gap:24px;padding:26px;background:var(--paper);border:1px solid var(--line);border-radius:15px;min-width:0;}
.shared-cover{width:125px;flex:none;}
.shared-cover .book-cover{width:125px;height:187px;}
.shared-book-info{flex:1;min-width:0;}
.shared-book h3,.shared-suggestion h3{font:26px Georgia,serif;line-height:1.3;margin:3px 0 9px;overflow-wrap:anywhere;}
.shared-book-info>.author,.shared-suggestion .author{font-size:12px;}
.shared-book .eyebrow{margin:0 0 10px;}
.shared-own-rating,.shared-owned{font-size:12px;color:var(--green);line-height:1.6;}
.shared-progress{max-width:420px;margin:18px 0;color:var(--green);font-size:12px;}
.shared-progress progress{display:block;width:100%;height:7px;margin-top:10px;accent-color:var(--green);}
.shared-review{margin:18px 0;border-top:1px solid var(--line);padding-top:14px;}
.shared-review summary{font-size:13px;color:var(--green);}
.shared-review p{white-space:pre-wrap;overflow-wrap:anywhere;font:17px/1.7 Georgia,serif;}
.suggestion-cover{width:70px;flex:none;}
.suggestion-cover .book-cover{width:70px;height:105px;}
.shared-suggestion{padding:20px;margin:14px 0;gap:18px;}
.shared-suggestion>div:last-child{min-width:0;flex:1;}
.shared-suggestion h3{font-size:23px;}
@media(max-width:760px){.sharing-options,.sharing-profile-fields{grid-template-columns:minmax(0,1fr);}.sharing-settings>summary{font-size:22px;}.share-book-choice,.suggest-book-option{align-items:flex-start;flex-direction:column;gap:14px;}.share-book-switches{font-size:13px;}.reader-friend-hero{padding:22px;gap:16px;align-items:flex-start;}.reader-avatar{width:54px;height:54px;font-size:27px;}.reader-avatar svg{width:26px;height:26px;}.reader-friend-hero h2{font-size:26px;}.shared-tabs button{padding:10px 12px;font-size:12px;}.shared-book{padding:20px;gap:16px;}.shared-cover{width:86px;}.shared-cover .book-cover{width:86px;height:129px;}.shared-book h3{font-size:22px;}.shared-book .settings-actions .btn{white-space:normal;line-height:1.5;}.shared-book .path-help{font-size:11px;}.shared-suggestion{padding:16px;gap:14px;}.shared-suggestion .settings-actions{flex-wrap:wrap;}.shared-suggestion .btn{font-size:12px;white-space:normal;}.sharing-settings input{font-size:16px;}}
@media(max-width:640px){.community-page{gap:18px;}.community-notice,.friend-code-card{padding:20px;}.community-form{display:grid;grid-template-columns:minmax(0,1fr);}.community-form .btn{width:100%;}.friend-card{padding:16px;gap:12px;}.friend-actions{flex-basis:100%;}.friend-actions .btn{flex:1 1 100px;}.friend-code-line .btn{width:100%;}.community-page input{font-size:16px;}.admin-table{min-width:670px;}.friend-info h3{font-size:21px;}}
