:root{--bg:#f6f5fa;--surface:#fff;--surface-soft:#f3f0fb;--text:#262338;--muted:#746f82;--border:#e7e3ee;--primary:#7658d6;--primary-dark:#6245bd;--primary-light:#eee9ff;--success:#2e9f69;--danger:#c64a60;--warning:#a56b11;--shadow:0 22px 60px rgba(57,43,92,.12);--radius:22px}*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}body{margin:0}button,input{font:inherit}a{color:inherit}.guest-page{min-height:100vh;display:grid;grid-template-columns:minmax(390px,46%) 1fr;background:var(--surface)}.guest-visual{position:relative;overflow:hidden;display:flex;min-height:100vh;flex-direction:column;padding:48px clamp(38px,6vw,84px);color:#fff;background:linear-gradient(145deg,#2f2852 0%,#5d45ad 48%,#8467df 100%)}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-size:18px;font-weight:800;letter-spacing:-.02em}.brand-light{color:#fff}.brand-mark{display:grid;width:42px;height:42px;place-items:center;border-radius:14px;background:var(--primary);color:#fff;font-size:20px;font-weight:900;box-shadow:0 8px 24px rgba(72,50,153,.24)}.brand-light .brand-mark{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.26);backdrop-filter:blur(10px)}.guest-hero-copy{position:relative;z-index:2;margin:auto 0 54px;max-width:590px}.eyebrow{display:inline-flex;margin-bottom:14px;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.12);font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.eyebrow.dark{background:var(--primary-light);color:var(--primary-dark)}.guest-hero-copy h1{margin:0 0 22px;font-size:clamp(42px,5vw,70px);line-height:1.02;letter-spacing:-.055em}.guest-hero-copy p{max-width:560px;margin:0;color:rgba(255,255,255,.8);font-size:18px;line-height:1.7}.feature-stack{position:relative;z-index:2;display:grid;gap:12px}.feature-item{display:flex;align-items:center;gap:14px;max-width:520px;padding:14px 16px;border:1px solid rgba(255,255,255,.13);border-radius:17px;background:rgba(255,255,255,.08);backdrop-filter:blur(12px)}.feature-icon{display:grid;flex:0 0 38px;height:38px;place-items:center;border-radius:12px;background:rgba(255,255,255,.16);font-weight:800}.feature-item strong,.feature-item small{display:block}.feature-item small{margin-top:3px;color:rgba(255,255,255,.67)}.visual-orbit{position:absolute;border:1px solid rgba(255,255,255,.1);border-radius:50%}.orbit-one{width:520px;height:520px;right:-240px;top:120px}.orbit-two{width:280px;height:280px;right:-70px;top:240px}.floating-note{position:absolute;z-index:1;display:grid;gap:2px;padding:14px 18px;border:1px solid rgba(255,255,255,.16);border-radius:17px;background:rgba(255,255,255,.1);backdrop-filter:blur(10px);transform:rotate(-4deg)}.floating-note span{font-size:11px;color:rgba(255,255,255,.65);text-transform:uppercase}.note-one{right:8%;top:21%}.note-two{right:18%;top:42%;transform:rotate(5deg)}.guest-main{display:flex;min-height:100vh;flex-direction:column;align-items:center;justify-content:center;padding:48px 7% 24px;background:#fbfafd}.guest-card-wrap{width:min(100%,570px)}.mobile-brand{display:none;align-items:center;gap:11px;margin-bottom:34px;font-weight:800}.auth-panel{padding:12px 0}.auth-heading{margin-bottom:30px}.auth-heading.centered{text-align:center}.auth-heading h2{margin:0 0 10px;font-size:36px;letter-spacing:-.04em}.auth-heading p{margin:0;color:var(--muted);line-height:1.65}.auth-form{display:grid;gap:19px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field-group{display:grid;gap:8px;font-size:14px;font-weight:750}.input-wrap{display:flex;align-items:center;border:1px solid var(--border);border-radius:14px;background:#fff;transition:.2s}.input-wrap:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px rgba(118,88,214,.11)}.input-wrap i{display:grid;width:48px;place-items:center;color:#948da4;font-style:normal}.input-wrap input{width:100%;min-width:0;padding:15px 15px 15px 0;border:0;outline:0;background:transparent;color:var(--text)}.input-wrap input::placeholder{color:#aaa5b3}.form-meta{display:flex;justify-content:flex-end;margin-top:-7px;color:var(--muted);font-size:13px}.primary-button,.secondary-button{display:flex;min-height:52px;align-items:center;justify-content:center;gap:12px;border:0;border-radius:14px;text-decoration:none;font-weight:800;cursor:pointer}.primary-button{background:var(--primary);color:#fff;box-shadow:0 10px 24px rgba(118,88,214,.23)}.primary-button:hover{background:var(--primary-dark)}.primary-button b{font-size:20px}.secondary-button{border:1px solid var(--border);background:#fff;color:var(--text)}.secondary-button:hover{border-color:#cfc7e2;background:#faf9fd}.auth-divider{display:flex;align-items:center;gap:14px;margin:27px 0;color:#aaa5b3;font-size:12px}.auth-divider:before,.auth-divider:after{height:1px;flex:1;background:var(--border);content:""}.auth-switch{text-align:center}.auth-switch p{margin:0 0 13px;color:var(--muted)}.auth-switch.compact{display:flex;justify-content:center;gap:7px;margin-top:26px;font-size:14px}.auth-switch.compact a{color:var(--primary-dark);font-weight:800}.privacy-note{display:flex;gap:11px;padding:13px 14px;border-radius:14px;background:var(--surface-soft);color:var(--muted);font-size:12px;line-height:1.55}.privacy-note span{display:grid;flex:0 0 24px;height:24px;place-items:center;border-radius:50%;background:#fff;color:var(--success);font-weight:900}.privacy-note p{margin:0}.alert{display:flex;align-items:flex-start;gap:10px;margin-bottom:20px;padding:13px 15px;border-radius:14px;font-size:14px}.alert span{display:grid;flex:0 0 23px;height:23px;place-items:center;border-radius:50%;font-weight:900}.alert-danger{background:#fff0f2;color:#9a3147}.alert-danger span{background:#ffdbe1}.alert-success{background:#ecf9f2;color:#1e784e}.alert-warning{background:#fff8e8;color:#835914}.guest-footer{margin:auto 0 0;padding-top:44px;color:#a09baa;font-size:12px}.auth-code-panel{max-width:470px;margin:auto}.code-symbol{display:grid;width:70px;height:70px;margin:0 auto 25px;place-items:center;border-radius:23px;background:var(--primary-light);color:var(--primary);font-size:28px;font-weight:900}.code-field{text-align:center}.code-field input{width:100%;padding:16px;border:1px solid var(--border);border-radius:14px;outline:0;text-align:center;font-size:28px;font-weight:800;letter-spacing:.25em}.code-field input:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(118,88,214,.11)}.back-link{display:block;margin-top:22px;text-align:center;color:var(--muted);font-size:14px;text-decoration:none}.secret-box{display:grid;gap:7px;margin-bottom:16px;padding:17px;border:1px dashed #c9bee8;border-radius:15px;background:var(--surface-soft)}.secret-box span{color:var(--muted);font-size:12px}.secret-box strong{overflow-wrap:anywhere;font-family:ui-monospace,monospace}.uri-details{margin-bottom:20px;color:var(--muted);font-size:13px}.uri-details small{display:block;margin-top:10px;overflow-wrap:anywhere}.recovery-codes{padding:20px;border:1px solid var(--border);border-radius:15px;background:#f8f7fb;text-align:center;font-family:ui-monospace,monospace;font-size:16px;line-height:1.8}.link-button{margin-top:18px}.app-body{min-height:100vh;background:var(--bg)}.topbar{position:sticky;z-index:20;top:0;border-bottom:1px solid var(--border);background:rgba(255,255,255,.92);backdrop-filter:blur(16px)}.topbar-inner{display:grid;grid-template-columns:260px minmax(200px,520px) 1fr;align-items:center;gap:25px;max-width:1480px;height:72px;margin:auto;padding:0 28px}.top-search{display:flex;align-items:center;gap:9px;padding:10px 14px;border-radius:13px;background:#f3f2f7;color:#8f899c}.top-search input{width:100%;border:0;outline:0;background:transparent}.top-actions{display:flex;justify-content:flex-end;gap:9px}.icon-button,.avatar-button{position:relative;display:grid;width:42px;height:42px;place-items:center;border:0;border-radius:13px;cursor:pointer}.icon-button{background:#f3f2f7;color:#5d5869}.avatar-button{background:var(--primary);color:#fff;font-size:12px;font-weight:900}.notification-dot{position:absolute;right:7px;top:7px;width:7px;height:7px;border:2px solid #fff;border-radius:50%;background:#e15a70}.app-grid{display:grid;grid-template-columns:260px minmax(0,1fr);max-width:1480px;margin:auto}.sidebar{position:sticky;top:72px;display:flex;height:calc(100vh - 72px);flex-direction:column;padding:28px 18px 24px;border-right:1px solid var(--border);background:#fff}.sidebar-nav{display:grid;gap:7px}.nav-item{display:flex;align-items:center;gap:13px;padding:12px 13px;border-radius:13px;color:#6c6677;text-decoration:none}.nav-item span{display:grid;width:24px;place-items:center;font-size:19px}.nav-item strong{flex:1;font-size:14px}.nav-item em{min-width:24px;padding:4px 7px;border-radius:99px;background:#f0edf8;color:var(--primary-dark);font-size:11px;font-style:normal;text-align:center}.nav-item:hover,.nav-item.active{background:var(--primary-light);color:var(--primary-dark)}.sidebar-security{display:flex;gap:11px;margin-top:auto;padding:13px;border-radius:14px;background:#f3faf6}.security-shield{display:grid;flex:0 0 33px;height:33px;place-items:center;border-radius:11px;background:#dff3e8;color:var(--success);font-weight:900}.sidebar-security strong,.sidebar-security small{display:block}.sidebar-security strong{font-size:12px}.sidebar-security small{margin-top:3px;color:#73827a;font-size:10px;line-height:1.4}.logout-form{margin-top:10px}.logout-button{display:flex;width:100%;align-items:center;gap:12px;padding:11px 13px;border:0;border-radius:12px;background:transparent;color:#8b8494;cursor:pointer}.logout-button:hover{background:#fff0f2;color:var(--danger)}.dashboard-main{min-width:0;padding:34px clamp(22px,4vw,56px) 80px}.welcome-row{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:28px}.welcome-row h1{margin:0 0 8px;font-size:34px;letter-spacing:-.04em}.welcome-row p{max-width:710px;margin:0;color:var(--muted);line-height:1.6}.welcome-avatar{display:none;width:54px;height:54px;place-items:center;border-radius:18px;background:var(--primary);color:#fff;font-weight:900}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:24px}.feed-column,.right-column{display:grid;align-content:start;gap:20px}.composer-card,.empty-feed,.profile-summary,.info-card{border:1px solid var(--border);border-radius:var(--radius);background:#fff}.composer-card{padding:17px}.composer-head{display:flex;align-items:center;gap:12px}.small-avatar{display:grid;width:42px;height:42px;place-items:center;border-radius:14px;background:var(--primary-light);color:var(--primary-dark);font-size:11px;font-weight:900}.composer-head button{flex:1;padding:13px 16px;border:0;border-radius:13px;background:#f5f4f8;color:#8b8594;text-align:left;cursor:pointer}.composer-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;padding-top:13px;border-top:1px solid var(--border)}.composer-actions button{padding:8px;border:0;background:transparent;color:#756f7f;font-size:13px;font-weight:700;cursor:pointer}.composer-actions button:hover{border-radius:10px;background:#f7f5fb;color:var(--primary-dark)}.empty-feed{padding:55px 36px;text-align:center}.empty-feed h2{margin:2px 0 10px;font-size:25px;letter-spacing:-.025em}.empty-feed p{max-width:500px;margin:0 auto 25px;color:var(--muted);line-height:1.6}.empty-illustration{position:relative;width:180px;height:130px;margin:0 auto 22px}.bubble{position:absolute;display:grid;place-items:center;border-radius:21px;font-weight:900}.bubble-a{left:14px;top:0;width:78px;height:58px;background:var(--primary-light);color:var(--primary)}.bubble-b{right:7px;top:21px;width:65px;height:50px;background:#fcebef;color:#d45c73}.people{position:absolute;right:0;bottom:5px;left:0;color:#8d81b6;font-size:35px;letter-spacing:-7px}.dashboard-cta{width:max-content;margin:auto;padding:0 24px}.profile-summary{position:relative;overflow:hidden;padding:0 20px 21px;text-align:center}.profile-cover{height:76px;margin:0 -20px;background:linear-gradient(135deg,#6651b9,#967ee6)}.profile-avatar{display:grid;width:72px;height:72px;margin:-36px auto 11px;place-items:center;border:5px solid #fff;border-radius:23px;background:var(--primary-light);color:var(--primary-dark);font-weight:900}.profile-summary h3{margin:0;font-size:16px}.profile-summary>p{margin:6px 0 18px;color:var(--muted);font-size:12px}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);padding-top:17px;border-top:1px solid var(--border)}.profile-stats strong,.profile-stats span{display:block}.profile-stats strong{font-size:17px}.profile-stats span{margin-top:3px;color:var(--muted);font-size:10px}.info-card{padding:20px}.info-card h3{margin:4px 0 0;font-size:16px}.info-card p{color:var(--muted);font-size:13px;line-height:1.55}.card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.count-badge{display:grid;min-width:38px;height:38px;place-items:center;border-radius:13px;background:var(--primary-light);color:var(--primary-dark);font-weight:900}.full{width:100%;min-height:44px;font-size:13px}.quick-status{display:grid;gap:15px}.quick-status h3{margin:0 0 2px}.status-line{display:flex;align-items:center;gap:11px}.status-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:11px;background:#f3f1f7;color:#766e83}.status-icon.ok{background:#eaf7f0;color:var(--success)}.status-line strong,.status-line small{display:block}.status-line strong{font-size:12px}.status-line small{margin-top:2px;color:var(--muted);font-size:10px}.mobile-nav{display:none}.register-panel .auth-heading{margin-bottom:23px}@media(max-width:1050px){.guest-page{grid-template-columns:42% 58%}.guest-visual{padding:38px}.guest-hero-copy h1{font-size:46px}.feature-item small{display:none}.dashboard-columns{grid-template-columns:1fr}.right-column{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-summary{grid-row:span 2}.topbar-inner{grid-template-columns:220px 1fr auto}.app-grid{grid-template-columns:220px 1fr}}@media(max-width:760px){.guest-page{display:block;background:#fbfafd}.guest-visual{display:none}.guest-main{min-height:100vh;padding:32px 22px 20px}.mobile-brand{display:flex}.guest-footer{text-align:center}.field-row{grid-template-columns:1fr}.auth-heading h2{font-size:31px}.topbar-inner{grid-template-columns:1fr auto;height:64px;padding:0 16px}.top-search{display:none}.brand-name{display:none}.app-grid{display:block}.sidebar{display:none}.dashboard-main{padding:24px 16px 100px}.welcome-avatar{display:grid}.welcome-row h1{font-size:28px}.welcome-row p{font-size:14px}.dashboard-columns{display:block}.right-column{display:grid;grid-template-columns:1fr;margin-top:18px}.composer-actions button{font-size:0}.composer-actions button span{font-size:18px}.empty-feed{padding:38px 20px}.mobile-nav{position:fixed;z-index:30;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(6,1fr);align-items:end;padding:7px 4px max(8px,env(safe-area-inset-bottom));border-top:1px solid var(--border);background:rgba(255,255,255,.96);backdrop-filter:blur(14px)}.mobile-nav a{display:grid;place-items:center;gap:2px;color:#898391;text-decoration:none}.mobile-nav a.active{color:var(--primary)}.mobile-nav a span{font-size:20px}.mobile-nav small{font-size:9px}.mobile-create{display:grid;width:46px;height:46px;margin:auto;place-items:center;border:0;border-radius:16px;background:var(--primary);color:#fff;font-size:26px;box-shadow:0 8px 18px rgba(118,88,214,.26)}.profile-summary{grid-row:auto}}@media(max-width:390px){.guest-main{padding-right:16px;padding-left:16px}.auth-heading h2{font-size:28px}.welcome-row p{display:none}.composer-card{padding:13px}.empty-feed h2{font-size:22px}}
/* v1.3 community management */
.nav-divider{margin:20px 13px 7px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.icon-button{text-decoration:none}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:26px}.page-head h1{margin:0 0 8px;font-size:34px;letter-spacing:-.04em}.page-head p{max-width:720px;margin:0;color:var(--muted);line-height:1.6}.quota-card{display:grid;min-width:155px;padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--surface);text-align:center}.quota-card strong{font-size:30px;color:var(--primary)}.quota-card span,.quota-card small{color:var(--muted)}.quota-card span{font-weight:700}.quota-card small{margin-top:4px;font-size:10px}.two-column-page{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-bottom:22px}.settings-card{padding:24px;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.settings-card h2{margin:0 0 8px;font-size:20px}.section-help{margin:0 0 20px;color:var(--muted);font-size:13px;line-height:1.55}.settings-form{display:grid;gap:17px}.settings-form label,.filter-bar label,.copy-panel label{display:grid;gap:7px;color:var(--text);font-size:13px;font-weight:750}.settings-form input,.settings-form textarea,.settings-form select,.filter-bar input,.filter-bar select,.copy-panel input{width:100%;padding:12px 13px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--text);outline:0}.settings-form textarea{resize:vertical}.settings-form input:focus,.settings-form textarea:focus,.settings-form select:focus,.filter-bar input:focus,.filter-bar select:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(118,88,214,.1)}.settings-form small{color:var(--muted);font-size:10px;font-weight:500}.secondary-button,.danger-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:0 18px;border-radius:12px;font-size:13px;font-weight:800;text-decoration:none;cursor:pointer}.secondary-button{border:1px solid var(--border);background:#fff;color:var(--text)}.secondary-button:hover{border-color:#cfc6e9;background:#faf8ff}.danger-button{border:0;background:#c64a60;color:#fff}.primary-button:disabled{opacity:.5;cursor:not-allowed}.copy-panel{display:grid;grid-template-columns:auto minmax(260px,1fr) auto;align-items:end;gap:18px;margin-bottom:22px;padding:20px;border:1px solid #d9cff4;border-radius:18px;background:var(--primary-light)}.copy-panel p{margin:4px 0 0;color:var(--muted);font-size:12px}.rule-list{display:grid;gap:16px;margin-top:20px}.rule-list>div{display:flex;gap:13px}.rule-list span{display:grid;flex:0 0 34px;height:34px;place-items:center;border-radius:11px;background:var(--primary-light);color:var(--primary-dark);font-weight:900}.rule-list p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.rule-list strong{display:block;color:var(--text)}.inline-warning{margin-top:15px;padding:12px;border-radius:12px;background:#fff8e8;color:#835914;font-size:12px}.table-card{margin-top:22px;padding:0;overflow:hidden}.table-card>.card-heading,.table-card>h2{padding:22px 24px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.card-heading h2{margin:0}.responsive-table{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:14px 18px;border-top:1px solid var(--border);text-align:left;white-space:nowrap;font-size:12px}th{background:#faf9fc;color:var(--muted);font-size:10px;letter-spacing:.04em;text-transform:uppercase}td strong,td small{display:block}td small{margin-top:4px;color:var(--muted)}.empty-cell{padding:34px;text-align:center;color:var(--muted)}.status-badge,.security-pill,.admin-badge{display:inline-flex;align-items:center;padding:7px 10px;border-radius:99px;font-size:10px;font-weight:850}.status-pending{background:#fff6df;color:#936214}.status-used{background:#eaf7f0;color:#24784f}.status-expired,.status-revoked{background:#fff0f2;color:#a93e52}.security-pill{background:#eaf7f0;color:#24784f}.admin-badge{background:var(--primary-light);color:var(--primary-dark)}.text-danger{border:0;background:transparent;color:var(--danger);font-size:11px;font-weight:800;cursor:pointer}.table-link{color:var(--primary-dark);font-weight:800;text-decoration:none}.profile-settings-grid{display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);gap:22px}.profile-preview{grid-row:span 2;overflow:hidden;padding:0 24px 28px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;text-align:center}.profile-preview .profile-cover{height:110px;margin:0 -24px}.profile-preview .profile-avatar{width:88px;height:88px;margin-top:-44px}.profile-preview h2{margin:12px 0 7px}.profile-preview p{color:var(--muted);font-size:13px;line-height:1.6}.identity-card{align-self:start}.identity-line{display:flex;align-items:center;gap:13px;padding:14px 0;border-bottom:1px solid var(--border)}.identity-line>span{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;background:var(--primary-light);color:var(--primary-dark)}.identity-line strong,.identity-line small{display:block}.identity-line small{margin-top:3px;color:var(--success);font-size:10px}.recovery-panel{margin-bottom:22px;padding:24px;border:1px solid #d9cff4;border-radius:var(--radius);background:var(--primary-light)}.recovery-panel h2{margin:0}.recovery-panel p{color:var(--muted)}.recovery-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.recovery-grid code{padding:10px;border-radius:10px;background:#fff;text-align:center}.device-list{display:grid}.device-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:16px 24px;border-top:1px solid var(--border)}.device-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:13px;background:#f2eff9;color:var(--primary)}.device-row strong,.device-row small{display:block}.device-row strong{font-size:13px}.device-row strong em{margin-left:7px;padding:4px 7px;border-radius:99px;background:#eaf7f0;color:#24784f;font-size:9px;font-style:normal}.device-row small{margin-top:4px;color:var(--muted);font-size:10px}.filter-bar{display:grid;grid-template-columns:minmax(240px,1fr) 220px auto;align-items:end;gap:15px}.check-row{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;justify-content:flex-start}.check-row input{width:auto}.danger-card{border-color:#f0cbd2;background:#fffafb}.mobile-logout{border:0;background:transparent;color:var(--muted);font-size:21px}.mobile-nav form{display:grid;place-items:center}.dashboard-cta{text-decoration:none}
@media(max-width:900px){.two-column-page,.profile-settings-grid{grid-template-columns:1fr}.profile-preview{grid-row:auto}.recovery-grid{grid-template-columns:repeat(2,1fr)}.copy-panel{grid-template-columns:1fr}.filter-bar{grid-template-columns:1fr 1fr}.filter-bar button{grid-column:span 2}.page-head{align-items:center}}
@media(max-width:600px){.page-head{display:block}.page-head .quota-card,.page-head .security-pill,.page-head .admin-badge{margin-top:16px}.page-head h1{font-size:28px}.settings-card{padding:19px}.card-heading{display:block}.card-heading form{margin-top:14px}.device-row{grid-template-columns:auto 1fr}.device-row form{grid-column:2}.filter-bar{grid-template-columns:1fr}.filter-bar button{grid-column:auto}.recovery-grid{grid-template-columns:1fr 1fr}.copy-panel{padding:16px}}

/* TOTP QR setup */
.totp-qr-card {
    margin: 22px 0;
    padding: 22px;
    border: 1px solid rgba(118, 88, 214, .18);
    border-radius: 22px;
    background: linear-gradient(145deg, #ffffff, #f7f4ff);
    text-align: center;
}

.totp-qr-image {
    display: block;
    width: min(280px, 100%);
    height: auto;
    margin: 0 auto 14px;
    padding: 12px;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 35px rgba(38, 35, 56, .10);
}

.totp-qr-card p,
.setup-hint {
    margin: 0;
    color: #6c6780;
    font-size: .92rem;
    line-height: 1.55;
}

.manual-setup-details {
    margin: 18px 0 22px;
    border: 1px solid #e8e4f2;
    border-radius: 16px;
    background: #fff;
    overflow: hidden;
}

.manual-setup-details > summary {
    padding: 15px 17px;
    cursor: pointer;
    font-weight: 700;
    color: #514b64;
}

.manual-setup-details[open] > summary {
    border-bottom: 1px solid #eeeaf5;
}

.manual-setup-details .secret-box {
    margin: 16px;
}

.manual-setup-details .setup-hint {
    padding: 0 16px 16px;
}
.trust-device-row{display:flex!important;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--border);border-radius:13px;background:#faf9fc;cursor:pointer}.trust-device-row input{width:18px;height:18px;margin-top:2px;accent-color:var(--primary)}.trust-device-row span{display:block}.trust-device-row strong,.trust-device-row small{display:block}.trust-device-row strong{font-size:13px;color:var(--text)}.trust-device-row small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.45}

/* SecureLayer CAPTCHA */
.captcha-block{display:grid;gap:9px;padding:15px;border:1px solid var(--border);border-radius:14px;background:#faf9fc}.captcha-block .sl-captcha{min-height:68px}.captcha-block p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}

/* v1.7 feed, comments, reactions and moderation */
.feed-page-head{margin-bottom:22px}.feed-page-head h1{margin:0 0 8px;font-size:36px;letter-spacing:-.04em}.feed-page-head p{max-width:760px;margin:0;color:var(--muted);line-height:1.6}.feed-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:22px;align-items:start}.feed-main-column{display:grid;gap:18px}.feed-sidebar{display:grid;gap:18px;position:sticky;top:98px}.feed-composer-card,.feed-post-card{border:1px solid var(--border);border-radius:var(--radius);background:#fff;box-shadow:0 10px 30px rgba(57,43,92,.05)}.feed-composer-card{padding:22px}.feed-composer-form{display:grid;gap:16px}.composer-identity,.post-author{display:flex;align-items:center;gap:12px}.composer-identity strong,.composer-identity small,.post-author strong,.post-author span{display:block}.composer-identity small,.post-author span{margin-top:3px;color:var(--muted);font-size:11px}.feed-composer-form>textarea{width:100%;padding:16px;border:1px solid var(--border);border-radius:16px;resize:vertical;outline:0;line-height:1.6}.feed-composer-form>textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(118,88,214,.1)}.composer-options{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.composer-options>label{display:grid;gap:7px}.composer-options select{width:100%;padding:12px;border:1px solid var(--border);border-radius:12px;background:#fff}.toggle-option{grid-template-columns:auto 1fr!important;align-items:flex-start;padding:12px;border:1px solid var(--border);border-radius:12px;background:#faf9fc;cursor:pointer}.toggle-option input{margin-top:3px;accent-color:var(--primary)}.toggle-option strong,.toggle-option small{display:block}.toggle-option strong{font-size:12px}.toggle-option small{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.4}.toggle-option.support{background:#fff8f7;border-color:#f0d6d1}.composer-submit-row{display:flex;align-items:center;justify-content:space-between}.composer-submit-row small{color:var(--muted)}.composer-submit-row .primary-button{min-height:44px;padding:0 20px}.feed-post-card{padding:20px}.feed-post-card.support-post{border-left:4px solid #d86b75}.post-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.post-avatar,.comment-avatar{display:grid;flex:0 0 42px;height:42px;place-items:center;border-radius:14px;background:var(--primary-light);color:var(--primary-dark);font-weight:900}.post-actions-menu summary{cursor:pointer;list-style:none;color:var(--muted);font-weight:900}.post-actions-menu{position:relative}.post-menu{position:absolute;right:0;z-index:4;min-width:165px;margin-top:7px;padding:7px;border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:var(--shadow)}.post-menu button{width:100%;padding:10px;border:0;background:transparent;text-align:left;cursor:pointer}.danger-text{color:var(--danger)}.support-label{display:inline-flex;margin:14px 0 0;padding:7px 10px;border-radius:99px;background:#fff0f1;color:#a74354;font-size:11px;font-weight:800}.post-body{padding:17px 0;font-size:15px;line-height:1.75;overflow-wrap:anywhere}.post-summary{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--border);color:var(--muted);font-size:11px}.reaction-bar{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding:9px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.reaction-bar form{min-width:0}.reaction-button{display:flex;width:100%;min-height:38px;align-items:center;justify-content:center;gap:5px;padding:5px;border:0;border-radius:10px;background:transparent;color:var(--muted);cursor:pointer}.reaction-button:hover,.reaction-button.active{background:var(--primary-light);color:var(--primary-dark)}.reaction-button b{font-size:9px}.reaction-button em{font-size:9px;font-style:normal}.comments-list{display:grid;gap:11px;padding-top:14px}.comment-row{display:flex;align-items:flex-start;gap:9px}.comment-avatar{flex-basis:32px;height:32px;border-radius:11px;font-size:11px}.comment-bubble{min-width:0;padding:10px 12px;border-radius:4px 15px 15px 15px;background:#f5f3f9}.comment-meta{display:flex;align-items:center;gap:8px}.comment-meta strong{font-size:11px}.comment-meta span{color:var(--muted);font-size:9px}.comment-bubble p{margin:5px 0 0;font-size:12px;line-height:1.55}.comment-report{margin-top:5px;padding:0;border:0;background:transparent;color:var(--muted);font-size:9px;cursor:pointer}.comment-form{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:9px;margin-top:14px}.comment-input-wrap{display:grid;padding:9px 11px;border:1px solid var(--border);border-radius:14px}.comment-input-wrap textarea{border:0;outline:0;resize:none}.comment-input-wrap label{color:var(--muted);font-size:9px}.comment-form>button{display:grid;width:39px;height:39px;place-items:center;border:0;border-radius:12px;background:var(--primary);color:#fff;cursor:pointer}.category-filter{display:grid;gap:4px}.category-filter a{padding:9px 11px;border-radius:10px;text-decoration:none;font-size:12px}.category-filter a:hover,.category-filter a.active{background:var(--primary-light);color:var(--primary-dark);font-weight:800}.community-rules p{color:var(--muted);font-size:12px;line-height:1.6}.community-rules a{color:var(--primary-dark);font-size:11px;font-weight:800}.report-dialog{width:min(92vw,520px);padding:0;border:0;border-radius:22px;box-shadow:var(--shadow)}.report-dialog::backdrop{background:rgba(25,20,39,.5)}.report-dialog form{display:grid;gap:17px;padding:24px}.dialog-head{display:flex;justify-content:space-between}.dialog-head h2{margin:0}.dialog-head button{border:0;background:transparent;font-size:25px;cursor:pointer}.report-dialog label{display:grid;gap:7px;font-size:12px;font-weight:750}.report-dialog select,.report-dialog textarea{padding:12px;border:1px solid var(--border);border-radius:12px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.dialog-actions button{min-height:43px;padding:0 18px}.moderation-list{display:grid;gap:18px}.moderation-card{padding:22px;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.moderation-card>header{display:flex;align-items:center;justify-content:space-between}.moderation-card>header>div{display:flex;align-items:center;gap:10px}.moderation-card time{color:var(--muted);font-size:10px}.moderation-card blockquote{margin:18px 0;padding:16px;border-left:4px solid var(--primary);border-radius:0 14px 14px 0;background:#f8f6fc;line-height:1.6}.moderation-meta{display:grid;grid-template-columns:1fr 1fr 2fr;gap:15px}.moderation-meta>div{padding:13px;border:1px solid var(--border);border-radius:12px}.moderation-meta span,.moderation-meta strong,.moderation-meta small{display:block}.moderation-meta span{color:var(--muted);font-size:9px;text-transform:uppercase}.moderation-meta strong{margin-top:5px;font-size:12px}.moderation-meta small,.moderation-meta p{margin:4px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.moderation-form{display:grid;grid-template-columns:1fr auto auto auto;gap:9px;margin-top:16px}.moderation-form input{padding:11px;border:1px solid var(--border);border-radius:11px}.moderation-form button{min-height:41px}.moderation-empty{text-align:center}
@media(max-width:1050px){.feed-layout{grid-template-columns:1fr}.feed-sidebar{position:static;grid-template-columns:1fr 1fr}.composer-options{grid-template-columns:1fr}.moderation-meta{grid-template-columns:1fr}.moderation-form{grid-template-columns:1fr 1fr 1fr}.moderation-form input{grid-column:1/-1}}
@media(max-width:650px){.feed-page-head h1{font-size:29px}.feed-composer-card,.feed-post-card{padding:15px}.feed-sidebar{grid-template-columns:1fr}.reaction-button b{display:none}.reaction-bar{gap:2px}.post-summary{font-size:10px}.moderation-form{grid-template-columns:1fr}.moderation-form input{grid-column:auto}.dialog-actions{display:grid;grid-template-columns:1fr 1fr}.composer-submit-row{align-items:flex-end}}

/* Notifications v1.8 */
.notification-menu{position:relative}.notification-menu summary{list-style:none;cursor:pointer}.notification-menu summary::-webkit-details-marker{display:none}.notification-button{position:relative}.notification-count{position:absolute;right:-5px;top:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:20px;background:#e5486d;color:#fff;font-size:11px;line-height:18px;text-align:center;font-weight:800}.notification-count.is-empty{display:none}.notification-dropdown{position:absolute;right:0;top:48px;width:min(380px,calc(100vw - 24px));background:#fff;border:1px solid #e9e5f1;border-radius:18px;box-shadow:0 22px 55px rgba(48,37,81,.18);overflow:hidden;z-index:50}.notification-dropdown-head{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid #eeeaf5}.notification-dropdown-head a{font-size:13px;font-weight:700;color:#7658d6}.notification-preview{margin:0}.notification-preview button{width:100%;border:0;background:#fff;text-align:left;padding:13px 18px;display:grid;gap:4px;cursor:pointer;border-bottom:1px solid #f1eef6}.notification-preview.unread button{background:#f5f1ff}.notification-preview strong{font-size:14px;color:#28243a}.notification-preview small{font-size:12px;color:#716b80}.notification-empty{padding:22px;text-align:center;color:#7d768d}.nav-badge{margin-left:auto;background:#7658d6;color:white;border-radius:999px;min-width:22px;height:22px;line-height:22px;text-align:center;font-size:11px;font-style:normal}.notification-page-list{display:grid;gap:10px}.notification-row{background:#fff;border:1px solid #ebe7f2;border-radius:16px;overflow:hidden}.notification-row.unread{border-color:#cfc2f6;background:#f8f5ff}.notification-row button{width:100%;display:flex;gap:12px;align-items:flex-start;text-align:left;border:0;background:transparent;padding:17px;cursor:pointer}.notification-row button>span:last-child{display:grid;gap:4px}.notification-row strong{color:#29243b}.notification-row small{color:#6e687c}.notification-row time{font-size:12px;color:#9891a4}.notification-dot{width:9px;height:9px;border-radius:50%;background:#7658d6;margin-top:6px;flex:0 0 auto}.notification-row:not(.unread) .notification-dot{background:#d8d3df}@media(max-width:760px){.notification-dropdown{position:fixed;left:12px;right:12px;top:66px;width:auto}.top-search{display:none}}

/* v1.9 – képfeltöltés */
.image-upload-box{margin:14px 0;padding:14px;border:1px dashed rgba(112,74,102,.35);border-radius:16px;background:#fff9fc}.image-upload-button{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;background:#f4e7ef;font-weight:700;cursor:pointer}.image-upload-box>span{display:block;margin-top:8px;font-size:.82rem;color:#7a6573}.image-preview{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.image-preview:empty{display:none}.image-preview-item{min-width:0}.image-preview-item img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px}.image-preview-item small{display:block;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.7rem}.post-image-grid{display:grid;gap:6px;margin:14px 0;overflow:hidden;border-radius:16px}.post-image-grid.image-count-1{grid-template-columns:1fr}.post-image-grid.image-count-2{grid-template-columns:repeat(2,1fr)}.post-image-grid.image-count-3,.post-image-grid.image-count-4{grid-template-columns:repeat(2,1fr)}.post-image-item{display:block;min-height:180px;background:#f2edf0}.post-image-item img{display:block;width:100%;height:100%;max-height:520px;object-fit:cover}.post-image-grid.image-count-1 .post-image-item img{object-fit:contain;background:#f7f3f5}@media(max-width:700px){.image-preview{grid-template-columns:repeat(3,minmax(0,1fr))}.post-image-item{min-height:130px}}

/* v1.9 – képfeltöltés */
.image-upload-box{margin:14px 0;padding:14px;border:1px dashed rgba(112,74,102,.35);border-radius:16px;background:#fff9fc}.image-upload-button{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;background:#f4e7ef;font-weight:700;cursor:pointer}.image-upload-box>span{display:block;margin-top:8px;font-size:.82rem;color:#7a6573}.image-preview{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.image-preview:empty{display:none}.image-preview-item{min-width:0}.image-preview-item img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px}.image-preview-item small{display:block;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.7rem}.post-image-grid{display:grid;gap:6px;margin:14px 0;overflow:hidden;border-radius:16px}.post-image-grid.image-count-1{grid-template-columns:1fr}.post-image-grid.image-count-2{grid-template-columns:repeat(2,1fr)}.post-image-grid.image-count-3,.post-image-grid.image-count-4{grid-template-columns:repeat(2,1fr)}.post-image-item{display:block;min-height:180px;background:#f2edf0}.post-image-item img{display:block;width:100%;height:100%;max-height:520px;object-fit:cover}.post-image-grid.image-count-1 .post-image-item img{object-fit:contain;background:#f7f3f5}@media(max-width:700px){.image-preview{grid-template-columns:repeat(3,minmax(0,1fr))}.post-image-item{min-height:130px}}

.image-lightbox[hidden] {
    display: none;
}

.image-lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(0, 0, 0, 0.92);
}

.image-lightbox__image {
    display: block;
    max-width: 95vw;
    max-height: 92vh;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 8px;
}

.image-lightbox__close {
    position: fixed;
    top: 16px;
    right: 20px;
    z-index: 10000;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
    font-size: 36px;
    line-height: 48px;
    cursor: pointer;
}

.image-lightbox__close:hover {
    background: rgba(255, 255, 255, 0.25);
}

body.lightbox-open {
    overflow: hidden;
}
/* Encrypted private messages v2.0 */
.messages-page{display:grid;gap:20px}.messages-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.messages-head h1{margin:4px 0;font-size:34px}.messages-head p{margin:0;color:var(--muted)}.eyebrow{color:var(--primary);font-size:11px;font-weight:800;text-transform:uppercase}.messages-shell{display:grid;grid-template-columns:310px minmax(0,1fr);min-height:620px;border:1px solid var(--border);border-radius:22px;background:#fff;overflow:hidden}.conversation-list{border-right:1px solid var(--border);background:#fbf9fd}.conversation-list-title{padding:18px;font-weight:800}.conversation-row{display:flex;align-items:center;gap:11px;padding:13px 16px;text-decoration:none;color:inherit}.conversation-row:hover,.conversation-row.active{background:var(--primary-light)}.conversation-row>span:last-child{display:grid;gap:3px}.conversation-row small{color:var(--muted)}.conversation-avatar{display:grid;width:42px;height:42px;place-items:center;border-radius:50%;background:#e9e1fa;color:var(--primary-dark);font-weight:900}.chat-panel{display:grid;grid-template-rows:auto 1fr auto;min-width:0}.chat-header{display:flex;justify-content:space-between;padding:17px 20px;border-bottom:1px solid var(--border)}.chat-header>div{display:grid;gap:3px}.chat-header small{color:var(--muted)}.chat-messages{overflow:auto;padding:20px;background:#f7f4fa}.chat-locked,.chat-placeholder{align-self:center;justify-self:center;text-align:center}.chat-locked{padding:30px;border-radius:18px;background:#fff;box-shadow:var(--shadow)}.message-bubble{width:fit-content;max-width:min(75%,620px);margin:8px 0;padding:11px 14px;border-radius:16px;background:#fff}.message-bubble.mine{margin-left:auto;background:var(--primary);color:#fff}.message-bubble p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.message-bubble time{display:block;margin-top:5px;font-size:9px;opacity:.7}.message-composer{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px;border-top:1px solid var(--border)}.message-composer textarea{min-height:48px;max-height:140px;padding:12px;border:1px solid var(--border);border-radius:13px;resize:vertical}.message-composer button,.primary-button{border:0;border-radius:12px;background:var(--primary);color:#fff;padding:0 18px;font-weight:800;cursor:pointer}.message-dialog{width:min(92vw,480px);padding:22px;border:0;border-radius:20px;box-shadow:var(--shadow)}.message-dialog::backdrop{background:rgba(20,15,32,.55)}.message-dialog form{display:grid;gap:15px}.message-dialog input{padding:13px;border:1px solid var(--border);border-radius:12px}.contact-results{display:grid;gap:7px;max-height:360px;overflow:auto}.contact-result{padding:12px;text-align:left;border:1px solid var(--border);border-radius:12px;background:#fff;cursor:pointer}.contact-result:disabled{opacity:.55;cursor:not-allowed}.messages-empty{padding:16px;color:var(--muted)}.message-nav-count{margin-left:auto;min-width:22px;padding:2px 7px;border-radius:999px;background:#e5486d;color:#fff;font-size:11px;text-align:center}@media(max-width:800px){.messages-head{align-items:stretch;flex-direction:column}.messages-shell{grid-template-columns:1fr;min-height:70vh}.conversation-list{border-right:0;border-bottom:1px solid var(--border);max-height:220px;overflow:auto}.message-bubble{max-width:88%}}

/* v2.3.1 mobile navigation fix */
.mobile-nav a{position:relative;min-width:0}.mobile-nav small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-nav-badge{position:absolute;top:-3px;left:calc(50% + 8px);min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#e5486d;color:#fff;font-size:10px;font-style:normal;line-height:17px;text-align:center;font-weight:800}@media(max-width:390px){.mobile-nav small{font-size:9px}.mobile-nav span{font-size:17px}}
