:root{
  --ink:#1D2A2C; --muted:#5B6B6E; --pine:#0D4E42; --pine-2:#136455;
  --mist:#E4EFEB; --paper:#F5F8F7; --line:#D3DEDA; --slate:#2E3133;
  --danger:#B42318; --danger-bg:#FDECEA; --info:#1F5B99; --info-bg:#E8F1FB;
  --amber:#8A5A00; --amber-bg:#FFF3D6;
}
*{box-sizing:border-box}
html{background:var(--paper)}
body{margin:0;font-family:"Rubik","Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}
a{color:var(--pine)}
.band{background:var(--slate);color:#fff;padding:18px 20px 64px;
  background-image:linear-gradient(135deg,rgba(255,255,255,.035) 25%,transparent 25%),
                   linear-gradient(225deg,rgba(255,255,255,.035) 25%,transparent 25%);
  background-size:60px 60px}
.bar{max-width:880px;margin:0 auto;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.brand{color:#fff;text-decoration:none;font-weight:700;font-size:1.15rem;margin-left:auto}
.bar nav{display:flex;gap:4px}
.bar nav a{color:#D5DCDB;text-decoration:none;padding:6px 12px;border-radius:6px}
.bar nav a.on,.bar nav a:hover{background:rgba(255,255,255,.1);color:#fff}
.me{color:#C9D1D0;font-size:.9rem;display:flex;gap:10px;align-items:center}
.me a{color:#BFE0D6}
main{max-width:880px;margin:-40px auto 50px;padding:0 16px}
.sheet{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px}
.sheet + .sheet{margin-top:18px}
@media(max-width:600px){.sheet{padding:18px 14px}}
h1{font-size:1.45rem;margin:0 0 4px;line-height:1.35}
h2{font-size:1.15rem;margin:0 0 12px}
.muted{color:var(--muted)}
.small{font-size:.87rem}

label{display:block;font-weight:500;margin:0 0 6px}
input[type=text],textarea,select{width:100%;font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:inherit}
textarea{min-height:130px;resize:vertical}
input:focus,textarea:focus,select:focus{outline:3px solid var(--mist);border-color:var(--pine)}
.field{margin-bottom:14px}
.btn{font:inherit;font-weight:500;border:0;border-radius:8px;padding:10px 20px;cursor:pointer;background:var(--pine);color:#fff;text-decoration:none;display:inline-block}
.btn:hover{background:var(--pine-2)}
.btn.ghost{background:transparent;color:var(--pine);border:1px solid var(--line)}
.btn.ghost:hover{background:var(--mist)}
.btn.danger{background:transparent;color:var(--danger);border:1px solid #F1C4BF}
.btn.danger:hover{background:var(--danger-bg)}
.btn.sm{padding:4px 12px;font-size:.85rem}
.btn:focus-visible,a:focus-visible{outline:3px solid #8CC7B8;outline-offset:2px}
.inline{display:inline}
.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}

.msg{border-radius:8px;padding:12px 14px;margin-bottom:18px}
.msg.error{background:var(--danger-bg);color:var(--danger)}
.msg.info{background:var(--info-bg);color:var(--info)}
.msg.ok{background:var(--mist);color:var(--pine)}

.who{font-weight:500}
.role{font-size:.72rem;background:var(--mist);color:var(--pine);padding:1px 7px;border-radius:10px;margin-inline-start:6px;vertical-align:1px}
.role.super{background:var(--pine);color:#fff}
.pill{font-size:.78rem;font-weight:500;padding:2px 10px;border-radius:10px;white-space:nowrap}
.st-new{background:var(--info-bg);color:var(--info)}
.st-review{background:var(--amber-bg);color:var(--amber)}
.st-dev{background:var(--mist);color:var(--pine)}
.st-done{background:var(--pine);color:#fff}
.st-rejected{background:#EEE;color:#666}

.filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}
.filters a{text-decoration:none;padding:4px 12px;border-radius:14px;border:1px solid var(--line);color:var(--muted);font-size:.88rem}
.filters a.on{background:var(--pine);border-color:var(--pine);color:#fff}
.list{list-style:none;margin:0;padding:0}
.list li{border-top:1px solid var(--line);padding:14px 0;display:flex;gap:14px;align-items:flex-start}
.list li:first-child{border-top:0}
.list .main{flex:1;min-width:0}
.list .title{font-weight:500;font-size:1.05rem;text-decoration:none;color:var(--ink)}
.list .title:hover{color:var(--pine);text-decoration:underline}
.count{min-width:54px;text-align:center;color:var(--muted);font-size:.8rem;line-height:1.2}
.count b{display:block;font-size:1.2rem;color:var(--ink)}

.post{border-top:1px solid var(--line);padding:16px 0}
.post:first-child,h2 + .post{border-top:0;padding-top:0}
.post-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.post-head .tools{margin-inline-start:auto}
.post-body{word-wrap:break-word}
.post.gone .post-body{color:var(--muted);font-style:italic}
.post.gone.modview .post-body{font-style:normal;background:var(--danger-bg);padding:8px 10px;border-radius:6px}
.event{color:var(--muted);font-size:.88rem;padding:10px 0;border-top:1px dashed var(--line)}
.opener{background:var(--paper);border-radius:10px;padding:16px;margin:14px 0 4px}
.modbar{background:var(--amber-bg);border-radius:10px;padding:10px 14px;margin-top:14px}
.modbar select{width:auto}

table.grid{border-collapse:collapse;width:100%;font-size:.9rem}
.grid td,.grid th{border-bottom:1px solid var(--line);padding:8px 6px;text-align:right;vertical-align:top}
.grid th{color:var(--muted);font-weight:500}
.scroll{overflow-x:auto}
.pager{display:flex;gap:6px;justify-content:center;margin-top:16px}
.pager a,.pager span{padding:4px 10px;border:1px solid var(--line);border-radius:6px;text-decoration:none}
.pager span{background:var(--pine);color:#fff;border-color:var(--pine)}
.narrow{max-width:440px;margin-inline:auto}
.or{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.88rem;margin:20px 0}
.or::before,.or::after{content:"";flex:1;border-top:1px solid var(--line)}
input[type=password]{width:100%;font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:inherit}
input[type=password]:focus{outline:3px solid var(--mist);border-color:var(--pine)}
.btn.wide{width:100%;text-align:center}
details.new > summary{list-style:none;cursor:pointer}
details.new > summary::-webkit-details-marker{display:none}
details.new[open] > summary{margin-bottom:16px}

/* ---------- תוספות: קריאה, נחוץ, נעילה, עריכה, מפתחים ---------- */
.role.dev{background:var(--info-bg);color:var(--info)}
.badge{display:inline-block;min-width:18px;padding:0 6px;border-radius:9px;background:#E8A33D;color:#1D2A2C;font-size:.72rem;font-weight:700;line-height:18px;text-align:center;margin-inline-start:4px}
.dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#E8A33D;margin-inline-end:6px;vertical-align:1px}
.list li.unread .title{font-weight:700}
.list li.read .title{color:#3D4A4C}
.newtag{font-size:.72rem;font-weight:700;background:#FFF1D6;color:#8A5A00;padding:1px 8px;border-radius:10px}
.post.is-new{background:linear-gradient(to left,#FFF8E8,transparent 60%);margin:0 -12px;padding-inline:12px;border-radius:8px}
.edited{font-size:.8rem;color:var(--muted)}
.own-tools a,.own-tools button{font-size:.82rem}
.linkbtn{background:none;border:0;padding:0;font:inherit;color:var(--pine);cursor:pointer;text-decoration:underline}
.linkbtn.danger{color:var(--danger)}
.lockpill{background:#2E3133;color:#fff}
.need{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:22px;padding:6px 16px;font:inherit;font-weight:500;cursor:pointer}
.need:hover{border-color:var(--pine)}
.need.on{background:var(--pine);border-color:var(--pine);color:#fff}
.need b{font-size:1.05rem}
.stats{display:flex;gap:18px;flex-wrap:wrap;color:var(--muted);font-size:.9rem;margin-top:10px}
.stats b{color:var(--ink)}
.welcome{border:2px solid var(--pine);background:#fff;border-radius:14px;padding:24px;margin-bottom:18px}
.welcome h2{font-size:1.3rem}
.welcome ul{margin:8px 0 16px;padding-inline-start:20px}
.welcome li{margin-bottom:6px}
.tabs{display:flex;gap:4px;flex-wrap:wrap;margin:0 0 18px;border-bottom:1px solid var(--line)}
.tabs a{text-decoration:none;color:var(--muted);padding:8px 12px;border-bottom:3px solid transparent;margin-bottom:-1px}
.tabs a.on{color:var(--pine);border-color:var(--pine);font-weight:500}
.card{border:1px solid var(--line);border-radius:10px;padding:14px;margin-bottom:12px}
.lockbar{background:#2E3133;color:#fff;border-radius:10px;padding:10px 14px;margin-top:14px}
.sortby{margin-inline-start:auto;display:flex;gap:6px;align-items:center;font-size:.88rem;color:var(--muted)}
.sortby select{width:auto;padding:4px 8px}
.counts{display:flex;gap:6px}
