/* Social Wiki — styles.css */
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:#f5f5f7;color:#1a1a2e}
input,textarea,button,select{font-family:inherit}
.screen{min-height:100vh;display:flex;flex-direction:column}
.auth-bg{background:linear-gradient(135deg,#1a1a2e 0%,#2d1b4e 100%)}
.center{display:flex;align-items:center;justify-content:center;flex:1;padding:1.5rem}
.card{background:#fff;border-radius:22px;padding:2rem 1.75rem;width:100%;max-width:420px;box-shadow:0 24px 60px rgba(0,0,0,.22)}
.logo{font-size:44px;display:block;text-align:center;margin-bottom:8px}
.app-title{font-size:24px;font-weight:800;color:#1a1a2e;text-align:center;margin-bottom:4px}
.app-sub{font-size:13px;color:#888;text-align:center;margin-bottom:22px}
.field{margin-bottom:12px}
.field label{display:block;font-size:12px;font-weight:600;color:#555;margin-bottom:4px}
.field input,.field textarea,.field select{width:100%;padding:10px 13px;border:1.5px solid #e0e0e0;border-radius:10px;font-size:14px;outline:none;background:#fff}
.field input:focus,.field textarea:focus,.field select:focus{border-color:#5a8fe8}
.field textarea{resize:vertical;min-height:80px;line-height:1.6}
.field-row{display:flex;gap:10px}
.field-row .field{flex:1}
.btn{display:block;width:100%;padding:13px;border:none;border-radius:12px;font-size:15px;font-weight:700;cursor:pointer;text-align:center;transition:opacity .15s,transform .1s}
.btn:active{transform:scale(.98)}
.btn-primary{background:#e8735a;color:#fff}
.btn-blue{background:#5a8fe8;color:#fff}
.btn-danger{background:#dc2626;color:#fff}
.btn-green{background:#10b981;color:#fff}
.btn-gray{background:#f0f0f0;color:#555}
.btn-purple{background:#7c3aed;color:#fff}
.btn-yellow{background:#f59e0b;color:#fff}
.btn:disabled{opacity:.45;cursor:default}
.btn-sm{padding:7px 13px;width:auto;font-size:12px;border-radius:9px;display:inline-block}
.alert{padding:10px 13px;border-radius:10px;font-size:13px;margin-bottom:12px;font-weight:500}
.al-err{background:#fef2f2;color:#b91c1c}
.al-ok{background:#d1fae5;color:#065f46}
.al-warn{background:#fef3c7;color:#92400e}
.al-info{background:#e0f2fe;color:#0c4a6e}
.header{background:linear-gradient(135deg,#1a1a2e,#2d1b4e);padding:1rem 1.15rem;position:sticky;top:0;z-index:100}
.hi{max-width:680px;margin:0 auto;display:flex;align-items:center;gap:7px}
.ht{font-weight:800;font-size:18px;color:#fff;flex:1}
.hbtn{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.22);border-radius:9px;padding:6px 11px;font-size:12px;font-weight:600;cursor:pointer}
.hbtn-hot{background:#e8735a;border-color:#e8735a}
.content{max-width:680px;margin:0 auto;padding:1.2rem 1rem 6rem}
.avatar{border-radius:50%;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;flex-shrink:0;vertical-align:middle}
.avatar img{width:100%;height:100%;object-fit:cover}
.ev-card{background:#fff;border-radius:15px;padding:1.1rem 1.15rem;border:1.5px solid #f0f0f0;box-shadow:0 2px 8px rgba(0,0,0,.04);margin-bottom:10px}
.u-card{background:#fff;border-radius:14px;padding:.9rem 1.1rem;border:1.5px solid #f0f0f0;display:flex;align-items:center;gap:11px;margin-bottom:8px;cursor:pointer;transition:background .15s}
.u-card:hover{background:#f8fafc}
.chip{border-radius:18px;padding:5px 12px;font-size:12px;font-weight:500;border:none;cursor:pointer}
.chip-on{background:#1a1a2e;color:#fff;font-weight:700}
.badge{border-radius:7px;padding:2px 7px;font-size:10px;font-weight:700}
.b-admin{background:#fef3c7;color:#92400e}
.b-own{background:rgba(232,115,90,.15);color:#e8735a}
.b-ban{background:#fee2e2;color:#b91c1c}
.filter-bar{display:flex;gap:7px;overflow-x:auto;padding-bottom:3px;margin-bottom:16px;scrollbar-width:none}
.filter-bar::-webkit-scrollbar{display:none}
.backdrop{position:fixed;inset:0;background:rgba(0,0,0,.55);display:flex;align-items:flex-end;justify-content:center;z-index:900}
.modal{background:#fff;border-radius:22px 22px 0 0;padding:1.5rem 1.5rem 2.5rem;width:100%;max-width:520px;max-height:92vh;overflow-y:auto}
.mtitle{font-weight:800;font-size:17px;color:#1a1a2e;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}
.mclose{background:none;border:none;font-size:22px;color:#aaa;line-height:1;cursor:pointer;padding:0}
.shr-btn{display:flex;align-items:center;gap:10px;justify-content:center;border:none;border-radius:13px;padding:12px;font-size:14px;font-weight:600;color:#fff;margin-bottom:8px;width:100%;cursor:pointer}
.shr-wa{background:#25D366}.shr-tg{background:#0088cc}.shr-sms{background:#6c757d}.shr-em{background:#e8735a}
.stars{display:flex;gap:4px;justify-content:center;font-size:34px;margin-bottom:8px}
.star{cursor:pointer;color:#d1d5db;transition:color .1s}
.star.on{color:#f59e0b}
.fab{position:fixed;right:18px;bottom:calc(env(safe-area-inset-bottom,0px)+22px);width:56px;height:56px;border-radius:50%;background:#e8735a;color:#fff;border:none;font-size:28px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(232,115,90,.45);z-index:200;cursor:pointer}
.cats{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:13px}
.tabs{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}
.tab{padding:8px 14px;border-radius:10px;border:none;font-size:12px;font-weight:600;cursor:pointer}
.tab-on{background:#1a1a2e;color:#fff}
.tab-off{background:#f0f0f0;color:#555}
.tree-node{background:#fff;border:1.5px solid #e0e0e0;border-radius:20px;padding:5px 12px;font-size:11px;font-weight:600;white-space:nowrap;display:inline-flex;align-items:center;gap:5px}
.tree-admin{background:#1a1a2e;color:#fff;border-color:#1a1a2e}
.photo-wrap{display:flex;flex-direction:column;align-items:center;gap:7px;margin-bottom:15px}
.seg-box{background:#f8fafc;border-radius:12px;padding:1rem;margin-top:12px;border:1.5px solid #e0e0e0}
.chk-grid{display:flex;flex-wrap:wrap;gap:7px;margin-top:6px}
.chk-item{display:flex;align-items:center;gap:5px;font-size:12px;cursor:pointer;background:#fff;border:1.5px solid #e0e0e0;border-radius:20px;padding:4px 10px;transition:all .15s}
.chk-item.on{background:#1a1a2e;color:#fff;border-color:#1a1a2e}
.seg-tag{background:#e0f2fe;color:#0c4a6e;border-radius:12px;padding:3px 8px;font-size:11px;font-weight:600;margin-right:4px;margin-bottom:4px;display:inline-block}
.stat-card{flex:1;background:#fff;border-radius:12px;padding:12px;text-align:center;border:1.5px solid #f0f0f0}
.stat-num{font-size:22px;font-weight:800}
.data-row{display:flex;justify-content:space-between;align-items:flex-start;padding:8px 0;border-bottom:1px solid #f0f0f0;font-size:13px}
.data-row:last-child{border-bottom:none}
.data-label{color:#888;font-size:11px;min-width:110px;padding-top:1px}
.data-val{font-weight:600;color:#1a1a2e;text-align:right;word-break:break-all;flex:1}
body.dark .u-card,.dark .u-card{background:#1e1e3a!important;border-color:#3d3d6e!important}
body.dark .u-card *{color:#e0e0f8!important}
body.dark .ev-card{background:#1a1a3a!important;border-color:#3d3d6e!important}
body.dark .ev-card div{color:#d0d0f0!important}
body.dark .data-val{color:#e8e8ff!important}
body.dark .data-label{color:#9090b8!important}
body.dark .data-row{border-color:#2d2d5e!important}
body.dark .mtitle{color:#e8e8ff!important}
body.dark .modal{background:#12122a!important}
body.dark .field label{color:#9090b8!important}
body.dark .field input,body.dark .field textarea,body.dark .field select{background:#1e1e3a!important;color:#e0e0f0!important;border-color:#3d3d6e!important}
body.dark .btn-gray{background:#2a2a4a!important;color:#b0b0d0!important}
body.dark .chip:not(.chip-on){background:#1e1e3a!important;color:#9090c8!important;border-color:#3d3d6e!important}
body.dark .filter-bar{background:transparent}
body.dark .seg-box{background:#16163a!important;border-color:#3d3d6e!important}
body.dark .chk-item:not(.on){background:#1e1e3a!important;border-color:#3d3d6e!important;color:#9090c8!important}
body.dark .content{background:transparent}
body.dark .stat-card{background:#1e1e3a!important;border-color:#3d3d6e!important}
body.dark .stat-card *{color:#e0e0f8!important}
.prog-bar{display:flex;gap:4px;margin-bottom:18px}
.prog-seg{flex:1;height:4px;border-radius:4px;transition:background .3s}
.section-title{font-size:12px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;margin-top:16px}
