:root {
  --font-head: 'Rubik', 'Assistant', 'Segoe UI', system-ui, sans-serif;
  --font-body: 'Assistant', 'Segoe UI', system-ui, sans-serif;
  --bg: #f4f6fb; --card: #fff; --card-soft: #f8f9fd; --line: #e4e8f0; --line-strong: #cfd6e4;
  --text: #182033; --text-soft: #465069; --muted: #7b8498; --accent: #4657d9; --accent-2: #8a5cf6;
  --accent-soft: #eef0ff; --accent-line: #cdd2ff; --on-accent: #fff; --mark: #ffe27a; --mark-line: #d4ae25;
  --shadow-sm: 0 1px 2px rgba(30, 43, 74, .05), 0 2px 8px rgba(30, 43, 74, .04);
  --shadow-md: 0 10px 28px -14px rgba(30, 43, 74, .25); --shadow-lg: 0 24px 70px -22px rgba(19, 27, 53, .38);
  --radius-lg: 18px; --radius-md: 13px; --radius-sm: 9px; --ease: cubic-bezier(.22,.9,.3,1);
  --page-max: 1180px; --content-scale: 1;
}
@media (prefers-color-scheme: dark) { :root { --bg:#0f1320; --card:#181d2b; --card-soft:#202637; --line:#2b3448; --line-strong:#3b4760; --text:#edf1fb; --text-soft:#c5cde0; --muted:#8d98ae; --accent:#91a0ff; --accent-2:#bd9aff; --accent-soft:#242844; --accent-line:#414873; --mark:#9a7b16; --mark-line:#e2bf37; --shadow-sm:0 1px 4px rgba(0,0,0,.35); --shadow-md:0 12px 32px -14px rgba(0,0,0,.7); --shadow-lg:0 24px 70px -20px rgba(0,0,0,.8); } }
html { scroll-behavior:smooth; } html[data-zoom="85"] { --content-scale:.88; } html[data-zoom="115"] { --content-scale:1.12; }
* { box-sizing:border-box; } html,body { margin:0; padding:0; }
[hidden] { display:none !important; } /* נדרש כי .threads/#results מגדירים display במפורש */
body { min-height:100vh; background:var(--bg); color:var(--text); font:calc(16px * var(--content-scale))/1.65 var(--font-body); -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
.backdrop { position:fixed; inset:0; z-index:0; pointer-events:none; background:radial-gradient(700px 420px at 90% -12%,rgba(138,92,246,.14),transparent 62%),radial-gradient(760px 520px at -12% 24%,rgba(70,87,217,.12),transparent 60%),radial-gradient(600px 400px at 60% 110%,rgba(14,165,233,.08),transparent 60%); }
.wrap { position:relative; z-index:1; max-width:var(--page-max); margin:auto; padding:22px 20px 68px; }
.hero { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; padding:4px 0; }
.brand { display:flex; align-items:center; gap:13px; min-width:0; }.logo { width:48px; height:48px; flex:none; display:flex; align-items:center; justify-content:center; border-radius:14px; color:#fff; background:linear-gradient(135deg,var(--accent),var(--accent-2)); box-shadow:0 10px 24px -8px rgba(70,87,217,.6),var(--shadow-sm); }
.brand-text h1 { margin:0; font:800 25px/1.2 var(--font-head); letter-spacing:-.02em; }.subtitle { margin:4px 0 0; color:var(--muted); font-size:14px; }.stats { display:inline-flex; align-items:center; gap:7px; padding:6px 13px; color:var(--accent); background:var(--accent-soft); border:1px solid var(--accent-line); border-radius:999px; font-size:12px; font-weight:700; white-space:nowrap; }.hero-tools { order:3; margin-inline-start:auto; }
.view-controls { display:inline-flex; align-items:center; gap:3px; padding:4px; border:1px solid var(--line); border-radius:11px; background:var(--card); box-shadow:var(--shadow-sm); white-space:nowrap; }.view-label { padding:0 6px; color:var(--muted); font-size:12px; font-weight:700; }.icon-btn,.zoom-value { min-width:28px; height:28px; border:0; border-radius:8px; background:transparent; color:var(--text-soft); cursor:pointer; font:700 14px var(--font-body); }.icon-btn:hover,.zoom-value:hover { color:var(--accent); background:var(--accent-soft); }.zoom-value { min-width:43px; font-size:11px; }
.search-wrap { position:sticky; top:-1px; z-index:20; margin-top:14px; padding:12px 0 10px; background:color-mix(in srgb,var(--bg) 84%,transparent); backdrop-filter:blur(12px); }.search-bar { position:relative; display:flex; align-items:center; max-width:900px; }.search-icon { position:absolute; inset-inline-start:18px; color:var(--muted); pointer-events:none; }.search-kbd { position:absolute; inset-inline-end:17px; z-index:1; padding:1px 5px; border:1px solid var(--line); border-radius:5px; color:var(--muted); font:700 12px ui-monospace,monospace; pointer-events:none; }
#q { width:100%; padding:13px 56px 13px 48px; border:1px solid var(--line); border-radius:13px; outline:none; color:var(--text); background:var(--card); box-shadow:var(--shadow-sm); font:16px var(--font-body); }.search-bar:focus-within .search-icon { color:var(--accent); }#q:focus { border-color:var(--accent); box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 15%,transparent),var(--shadow-md); }#q::placeholder { color:var(--muted); }#q::-webkit-search-cancel-button { -webkit-appearance:none; }.clear { position:absolute; inset-inline-end:48px; width:27px; height:27px; display:flex; align-items:center; justify-content:center; border:0; border-radius:50%; color:var(--accent); background:var(--accent-soft); cursor:pointer; }.clear:hover { background:var(--accent-line); transform:scale(1.05); }
.search-meta { display:flex; align-items:center; justify-content:space-between; gap:12px; max-width:900px; min-height:38px; padding:8px 6px 0; }.count { color:var(--muted); font-size:13px; }.search-links { display:inline-flex; align-items:center; gap:8px; }.gsearch,.advanced-toggle { display:inline-flex; align-items:center; gap:7px; padding:6px 12px; border:1px solid var(--line); border-radius:999px; color:var(--muted); background:var(--card); box-shadow:var(--shadow-sm); font:600 12px var(--font-body); text-decoration:none; white-space:nowrap; cursor:pointer; }.gsearch:hover,.advanced-toggle:hover { color:var(--accent); border-color:var(--accent-line); }.gsearch svg { flex:none; }.advanced-toggle span { color:var(--accent); font-size:16px; }.advanced-panel { max-width:900px; margin-top:10px; padding:14px 16px; border:1px solid var(--line); border-radius:14px; background:color-mix(in srgb,var(--card) 88%,transparent); box-shadow:var(--shadow-md); }.advanced-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }.advanced-panel label,.report-form label { display:grid; gap:4px; color:var(--text-soft); font-size:12px; font-weight:700; }.advanced-panel input,.advanced-panel select,.report-form input,.report-form select,.report-form textarea { width:100%; padding:8px 10px; border:1px solid var(--line); border-radius:8px; outline:none; color:var(--text); background:var(--card); font:500 13px var(--font-body); }.advanced-panel input:focus,.advanced-panel select:focus,.report-form input:focus,.report-form select:focus,.report-form textarea:focus { border-color:var(--accent); box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent); }.check-option { display:flex!important; align-items:center; gap:8px!important; margin-top:12px; cursor:pointer; }.check-option input { width:16px; height:16px; accent-color:var(--accent); }.query-help { margin-top:11px; color:var(--muted); font-size:12px; }.query-help code { padding:2px 4px; border-radius:4px; color:var(--accent); background:var(--accent-soft); }
.threads,#results { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:4px; }.thread,.result { display:block; position:relative; margin:0; padding:12px 14px; border:1px solid var(--line); border-radius:12px; color:inherit; background:var(--card); box-shadow:var(--shadow-sm); text-decoration:none; overflow:hidden; transition:transform .2s var(--ease),box-shadow .25s var(--ease),border-color .2s var(--ease); animation:rise .4s var(--ease) both; }.thread { display:flex; align-items:center; gap:10px; min-height:76px; }.thread:hover,.result:hover { transform:translateY(-2px); border-color:var(--accent-line); box-shadow:var(--shadow-md); }.thread::before { content:''; position:absolute; inset-block:0; inset-inline-start:0; width:3px; background:linear-gradient(180deg,var(--accent),var(--accent-2)); opacity:0; }.thread:hover::before { opacity:1; }.t-main { flex:1; min-width:0; }.t-subject,.r-subject { font:600 15px/1.4 var(--font-head); }.t-meta { margin-top:1px; overflow:hidden; color:var(--muted); font-size:12px; text-overflow:ellipsis; white-space:nowrap; }.t-badge { flex:none; min-width:30px; padding:2px 8px; border:1px solid var(--accent-line); border-radius:999px; color:var(--accent); background:var(--accent-soft); font:700 12px var(--font-head); text-align:center; }.thread::after { content:'‹'; flex:none; color:var(--muted); font-size:22px; line-height:1; }.thread:hover::after { color:var(--accent); transform:translateX(-3px); }
.more-wrap { display:flex; justify-content:center; padding:16px 0 6px; grid-column:1/-1; }.more-wrap .btn { padding:10px 24px; border-radius:999px; font-size:13px; }.r-top { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; }.r-meta { color:var(--muted); font-size:12px; white-space:nowrap; }.r-snippet { margin-top:3px; color:var(--text-soft); font-size:13px; }.r-snippet mark { padding:0 2px; border-radius:3px; color:inherit; background:var(--mark); box-shadow:inset 0 -1px 0 var(--mark-line); }.r-thread { display:inline-flex; margin-top:5px; padding-top:5px; border-top:1px solid var(--line); color:var(--accent); font-size:12px; font-weight:600; }.ell { color:var(--muted); }.muted { color:var(--muted); font-style:italic; }
.topnav { position:sticky; top:0; z-index:30; display:flex; align-items:center; justify-content:space-between; gap:12px; margin:-6px -10px 10px; padding:8px 10px; border-radius:14px; background:color-mix(in srgb,var(--bg) 88%,transparent); backdrop-filter:blur(12px); box-shadow:0 1px 0 color-mix(in srgb,var(--line) 60%,transparent); }.back { display:inline-flex; align-items:center; gap:6px; padding:6px 12px; border-radius:999px; color:var(--accent); font-size:14px; font-weight:600; text-decoration:none; }.back:hover { background:var(--accent-soft); }.top-actions { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }.btn { display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:8px 12px; border:1px solid var(--line); border-radius:9px; cursor:pointer; font:700 12.5px var(--font-body); text-decoration:none; }.btn.ghost { color:var(--text-soft); background:var(--card); box-shadow:var(--shadow-sm); }.btn.ghost:hover { color:var(--accent); border-color:var(--accent-line); background:var(--accent-soft); }.btn.primary { color:var(--on-accent); border-color:var(--accent); background:var(--accent); }
.thread-head { margin:6px 0 16px; padding:16px 18px; border:1px solid var(--line); border-radius:14px; background:color-mix(in srgb,var(--card) 88%,transparent); box-shadow:var(--shadow-sm); }.eyebrow { color:var(--accent); font-size:11px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }.thread-head h1 { margin:3px 0 6px; font:800 25px/1.25 var(--font-head); }.thread-meta { display:flex; align-items:center; flex-wrap:wrap; gap:8px; color:var(--muted); font-size:13px; }.chip { display:inline-flex; padding:2px 10px; border:1px solid var(--accent-line); border-radius:999px; color:var(--accent); background:var(--accent-soft); font-size:12px; font-weight:700; }.authors-wrap { display:inline-flex; align-items:center; gap:6px; flex-wrap:wrap; }.authors-more { display:inline-flex; align-items:center; padding:1px 10px; border:1px solid var(--accent-line); border-radius:999px; color:var(--accent); background:var(--accent-soft); font:600 12px var(--font-body); cursor:pointer; }.authors-more:hover { background:var(--accent-line); }.thread-flow { display:flex; flex-direction:column; gap:10px; }.msg { margin:0; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:var(--card); box-shadow:var(--shadow-sm); scroll-margin-top:20px; animation:rise .45s var(--ease) both; }.msg.op { border-color:var(--accent-line); }.msg.is-reply { position:relative; margin-inline-start:calc(min(var(--depth,1),4) * 20px); }.msg.is-reply::before { content:''; position:absolute; inset-block:0; inset-inline-start:-14px; width:2px; border-radius:2px; background:var(--accent-line); }.msg:target { animation:flash 1.4s var(--ease); }.msg-head { display:flex; align-items:center; gap:10px; padding:10px 14px; border-bottom:1px solid var(--line); background:var(--card-soft); }.avatar { display:flex; align-items:center; justify-content:center; width:36px; height:36px; flex:none; border-radius:50%; color:#fff; background:linear-gradient(135deg,hsl(var(--hue,220),70%,52%),hsl(calc(var(--hue,220) + 40),68%,44%)); font:700 15px var(--font-head); }.who { flex:1; min-width:0; }.name-line { display:flex; align-items:baseline; flex-wrap:wrap; gap:8px; }.name { font:700 15px var(--font-head); }.addr { color:var(--muted); font-size:12px; word-break:break-all; }.inreply { display:inline-flex; margin-top:3px; padding:1px 9px; border:1px solid var(--accent-line); border-radius:999px; color:var(--accent); background:var(--accent-soft); font-size:12px; font-weight:600; text-decoration:none; }.date { flex:none; color:var(--muted); font-size:12px; white-space:nowrap; }.msg-report { flex:none; display:inline-flex; align-items:center; gap:5px; padding:5px 7px; border:0; border-radius:7px; color:var(--muted); background:transparent; cursor:pointer; font:600 12px var(--font-body); }.msg-report:hover,.text-btn:hover { color:var(--accent); background:var(--accent-soft); }.msg-body { padding:12px 14px; color:var(--text-soft); font-size:14px; line-height:1.55; white-space:pre-wrap; overflow-wrap:anywhere; word-break:break-word; }.msg-body strong { color:var(--text); font-weight:800; }.quoted-line { display:block; margin:4px 0; padding:4px 10px; border-inline-start:3px solid var(--accent); border-radius:5px; color:var(--muted); background:var(--accent-soft); font-size:.94em; }.quoted-line::first-letter { color:var(--accent); font-weight:800; }.msg-body a { color:var(--accent); text-decoration:underline; text-underline-offset:2px; }.attachments { display:flex; flex-wrap:wrap; gap:8px; padding:0 14px 12px; }.att { display:inline-flex; align-items:center; gap:8px; padding:6px 12px; border:1px solid var(--accent-line); border-radius:9px; color:var(--accent); background:var(--accent-soft); font-size:12px; font-weight:600; text-decoration:none; }.att-size { color:var(--muted); font-size:11px; font-weight:400; }.msg-foot { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:7px 14px; border-top:1px solid var(--line); color:var(--muted); background:var(--card-soft); font-size:12px; }.msg-foot a { color:var(--muted); text-decoration:none; }.text-btn { padding:4px 7px; border:0; border-radius:6px; color:var(--muted); background:transparent; cursor:pointer; font:600 12px var(--font-body); }
/* במסך רחב שם הכותב מוצג בעמודה צרה בצד ההודעה (לא מעליה) — חוסך גובה; במובייל נשאר מעל. */
@media (min-width: 900px) {
  .msg { display:grid; grid-template-columns:200px 1fr; }
  .msg-head { grid-column:1; grid-row:1 / -1; flex-direction:column; align-items:flex-start; gap:8px; border-bottom:0; border-inline-end:1px solid var(--line); }
  .msg-head .avatar { margin-bottom:2px; }
  .msg-head .date { align-self:flex-start; white-space:normal; }
  .msg-head .msg-report { align-self:flex-start; }
  .msg-body { grid-column:2; }
  .attachments { grid-column:2; }
  .msg-foot { grid-column:2; }
}
/* כפתור צף "חזרה למעלה" — מופיע בעדינות אחרי גלילה של 700px */
.to-top { position:fixed; inset-inline-end:22px; bottom:24px; z-index:40; width:46px; height:46px; display:flex; align-items:center; justify-content:center; border:1px solid var(--accent-line); border-radius:50%; color:var(--accent); background:var(--card); box-shadow:var(--shadow-md); cursor:pointer; opacity:0; transform:translateY(10px); pointer-events:none; transition:opacity .3s var(--ease),transform .3s var(--ease),background .2s var(--ease); }
.to-top.visible { opacity:1; transform:none; pointer-events:auto; }.to-top:hover { background:var(--accent-soft); }
.site-foot { margin-top:36px; padding-top:16px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; text-align:center; }.site-foot a { color:var(--accent); text-decoration:none; }
.about-link { white-space:nowrap; }.hero-tools { display:flex; align-items:center; gap:8px; }
.about-page { max-width:900px; margin:0 auto; }.about-hero { padding:26px 6px 22px; }.about-hero h1 { margin:5px 0 8px; font:800 32px/1.2 var(--font-head); letter-spacing:-.02em; }.about-hero p { max-width:680px; margin:0; color:var(--text-soft); font-size:16px; }.about-grid { display:grid; grid-template-columns:1.35fr .85fr; gap:12px; }.about-grid-bottom { grid-template-columns:1fr 1fr; margin-top:12px; }.about-card { padding:22px; border:1px solid var(--line); border-radius:16px; background:var(--card); box-shadow:var(--shadow-sm); }.about-card h2 { margin:2px 0 9px; font:800 21px var(--font-head); }.about-card p { margin:8px 0; color:var(--text-soft); font-size:14px; line-height:1.7; }.about-card a { color:var(--accent); font-weight:700; }.about-icon { display:flex; align-items:center; justify-content:center; width:34px; height:34px; margin-bottom:10px; border-radius:10px; color:var(--accent); background:var(--accent-soft); font-size:19px; }.permission-note { margin-top:16px!important; padding:10px 12px; border-inline-start:3px solid var(--accent); border-radius:5px; background:var(--accent-soft); color:var(--text)!important; font-weight:600; }.contact-card { background:linear-gradient(145deg,var(--card),var(--accent-soft)); }.contact-email { display:inline-block; margin:5px 0 13px; font-size:16px; direction:ltr; }.muted { color:var(--muted)!important; }.pricing-card { margin-top:12px; }.promotion-note { margin:0 0 13px!important; padding:9px 12px; border-radius:8px; color:var(--muted)!important; background:var(--card-soft); font-size:12px!important; }.promotion-details { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:14px; padding-top:14px; border-top:1px solid var(--line); }.promotion-section { display:flex; align-items:flex-start; gap:10px; }.promotion-section .about-icon { flex:none; margin:0; }.promotion-section h3 { margin:1px 0 3px; font:800 16px var(--font-head); }.promotion-section p { margin:4px 0; }.promotion-section .payment-details { margin:8px 0; }.about-creator { margin-top:12px; min-height:0; }.section-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }.section-heading h2 { margin:2px 0 0; }.price-badge { padding:5px 10px; border:1px solid var(--accent-line); border-radius:999px; color:var(--accent); background:var(--accent-soft); font-size:12px; font-weight:700; }.price-list { display:grid; grid-template-columns:1fr 1fr; gap:8px; padding:0; margin:0; list-style:none; }.price-item { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:62px; padding:10px 12px; border:1px solid var(--line); border-radius:10px; background:var(--card-soft); }.price-item strong { display:block; font-size:13px; }.price-item small { display:block; margin-top:2px; color:var(--muted); font-size:11px; line-height:1.35; }.price { flex:none; color:var(--accent); font:800 17px var(--font-head); white-space:nowrap; }.payment-details { display:grid; gap:3px; margin:12px 0; padding:12px; border-radius:10px; color:var(--text); background:var(--card-soft); font-size:14px; }.creator-card { display:flex; flex-direction:column; align-items:flex-start; }.creator-card .btn { margin-top:auto; }.payment-card,.creator-card { min-height:210px; }
.report-dialog { width:min(520px,calc(100vw - 28px)); padding:0; border:0; border-radius:18px; color:var(--text); background:var(--card); box-shadow:var(--shadow-lg); }.report-dialog::backdrop { background:rgba(15,18,30,.55); backdrop-filter:blur(3px); }.report-form { position:relative; display:grid; gap:13px; padding:24px; }.report-form h2 { margin:-7px 0 0; font:800 22px var(--font-head); }.dialog-intro { margin:-4px 0 0; color:var(--muted); font-size:13px; line-height:1.5; }.dialog-close { position:absolute; inset-inline-end:14px; inset-block-start:12px; width:30px; height:30px; border:0; border-radius:50%; color:var(--muted); background:var(--card-soft); font-size:22px; cursor:pointer; }.report-target { padding:9px 11px; border:1px solid var(--accent-line); border-radius:8px; color:var(--accent); background:var(--accent-soft); font-size:12px; font-weight:700; }.optional { color:var(--muted); font-weight:400; }.report-form textarea { min-height:90px; resize:vertical; }.dialog-actions { display:flex; gap:8px; justify-content:flex-start; padding-top:3px; }.form-status { min-height:20px; margin:-5px 0 0; color:var(--accent); font-size:12px; white-space:pre-wrap; }
@keyframes rise { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } } @keyframes flash { 0% { box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 50%,transparent); } 100% { box-shadow:var(--shadow-sm); } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.001ms!important; transition-duration:.001ms!important; } }
@media print { body { background:#fff!important; color:#000; font-size:11pt; } .backdrop,.topnav,.site-foot,.msg-report,.msg-foot,.report-dialog,.hero,.search-wrap { display:none!important; } .wrap { max-width:none; padding:0; } .thread-head { margin:0 0 14px; padding:0 0 10px; border:0; border-bottom:1px solid #999; box-shadow:none; }.thread-head h1{font-size:18pt}.msg{break-inside:avoid; box-shadow:none; border-color:#aaa}.msg-body{font-size:10.5pt}.msg.is-reply{margin-inline-start:12px} a{color:inherit!important;text-decoration:none!important} }
@media (max-width:760px) { .wrap{padding:14px 10px 42px}.hero{align-items:flex-start}.hero-tools{width:100%;margin-top:4px}.threads,#results{grid-template-columns:1fr}.advanced-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.promotion-details{grid-template-columns:1fr}.topnav{align-items:flex-start;flex-direction:column}.top-actions{width:100%}.top-actions .btn{flex:1}.thread-head h1{font-size:21px}.about-hero{padding:18px 2px}.about-hero h1{font-size:26px}.about-grid,.about-grid-bottom{grid-template-columns:1fr}.price-list{grid-template-columns:1fr}.payment-card,.creator-card{min-height:0}.to-top{inset-inline-end:14px;bottom:16px;width:42px;height:42px} }
@media (max-width:460px) { .advanced-grid{grid-template-columns:1fr}.search-meta{align-items:flex-start;flex-direction:column}.search-links{width:100%;justify-content:space-between}.msg-head{align-items:flex-start;flex-wrap:wrap}.msg-report{margin-inline-start:auto}.date{width:auto;padding-inline-start:46px}.brand-text h1{font-size:22px} }
