*{box-sizing:border-box}
body{margin:0;font:14.5px/1.5 -apple-system,"Segoe UI",sans-serif;background:#eef1f5;color:#1b1f24}
nav{display:flex;gap:14px;align-items:center;background:#101418;color:#eee;padding:10px 16px}
nav a{color:#cfd8e3;text-decoration:none}nav a:hover{color:#fff}
nav .brand{font-weight:700;color:#fff;letter-spacing:.3px}
nav .right{margin-left:auto;display:flex;gap:12px;align-items:center}
main{padding:14px;max-width:1600px;margin:0 auto}
.card{background:#fff;border:1px solid #dde1e6;border-radius:12px;padding:18px;margin-bottom:16px;box-shadow:0 1px 2px rgba(16,20,24,.04)}
.narrow{max-width:360px;margin:60px auto}
input,select,textarea,button{font:inherit;padding:8px 10px;border:1px solid #c8cdd3;border-radius:8px}
input,textarea{width:100%;margin:4px 0;background:#fff}
button{background:#0b62d6;color:#fff;border:0;cursor:pointer;padding:8px 14px;border-radius:8px}
button:hover{background:#0a56bc}button.small{padding:3px 8px;font-size:12px}
button.ghost{background:#e8ecf1;color:#33404d;padding:6px 9px}
.row{display:flex;gap:8px;align-items:center}.row input{width:auto;flex:1}
.err{color:#b3261e}.ok{color:#0a7d33}.dim{color:#7a8694;font-size:12.5px}.right{margin-left:auto}
.wait{color:#a15c00;font-weight:600}
table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:6px 8px;border-bottom:1px solid #e6e9ed}
details{border-bottom:1px solid #e6e9ed;padding:6px 0}pre{white-space:pre-wrap}
.review{border:1px solid #e0e4e9;border-left:4px solid #0b62d6;border-radius:8px;padding:8px 12px;margin:8px 0;background:#fff}
.review.kapali{border-left-color:#0a7d33;opacity:.7}
.diff{max-height:220px;overflow:auto;background:#0d1117;color:#c9d1d9;padding:10px;border-radius:8px;font-size:12px}

/* ---------- 3 sutunlu atolye ---------- */
.workspace{display:grid;grid-template-columns:minmax(340px,1.05fr) minmax(360px,1.15fr) minmax(320px,.85fr);
 gap:12px;height:calc(100vh - 84px)}
.workspace.tex-kapali{grid-template-columns:minmax(360px,1.4fr) minmax(320px,1fr)}
.workspace.tex-kapali .texcol{display:none}
.rail{display:none;position:fixed;left:10px;top:74px;z-index:5;padding:6px 10px;background:#101418}
.workspace.tex-kapali .rail{display:block}
.col{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #dde1e6;
 border-radius:12px;overflow:hidden;box-shadow:0 1px 3px rgba(16,20,24,.05)}
.toolbar{display:flex;gap:8px;align-items:center;padding:8px 10px;border-bottom:1px solid #e6e9ed;background:#f7f9fb}
.toolbar select{max-width:180px}
.status{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#content{flex:1;border:0;border-radius:0;resize:none;white-space:pre;overflow:auto;
 font:12.5px/1.55 ui-monospace,Menlo,monospace;background:#fbfcfe;padding:12px}
#content:focus{outline:none;background:#fff}
#pdfwrap{flex:1;display:flex}#pdfwrap iframe{flex:1;width:100%;border:0}
.empty,.hint{flex:1;display:flex;align-items:center;justify-content:center;color:#8a94a1;padding:20px;text-align:center}

/* ---------- sohbet ---------- */
#msgs{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;background:#f2f4f8}
.msg{display:flex;flex-direction:column;max-width:94%}
.msg .who{font-size:11px;color:#7a8694;margin:0 6px 2px}
.msg .bubble{padding:9px 12px;border-radius:14px;white-space:pre-wrap;word-break:break-word;
 box-shadow:0 1px 1px rgba(16,20,24,.06);font-size:13.5px}
.msg.user{align-self:flex-end;align-items:flex-end}
.msg.user .bubble{background:#0b62d6;color:#fff;border-bottom-right-radius:4px}
.msg.bot{align-self:flex-start}
.msg.bot .bubble{background:#fff;border:1px solid #e2e6eb;border-bottom-left-radius:4px}
.msg.bot .bubble details{border:0;margin-top:6px}
.msg.bot .bubble summary{cursor:pointer;color:#0b62d6;font-size:12.5px}
#chatform{display:flex;gap:8px;padding:10px;border-top:1px solid #e6e9ed;background:#fff}
#chatform textarea{flex:1;resize:none;margin:0}

.hidden{display:none!important}
.busybar{display:flex;align-items:center;gap:10px;padding:8px 12px;border-top:1px solid #e6e9ed;
 background:#fff7e8;color:#8a5a00;font-size:13px}
.stopbtn{background:#b3261e;padding:4px 12px}.stopbtn:hover{background:#9a1f18}
#chatform textarea:disabled{background:#f0f2f5;color:#98a2ad}
