<style>
    .ops-board { --slate:#334155; --slate-d:#1e293b; --line:#e2e8f0; --muted:#64748b; }

    /* ── Özet şerit ── */
    .ops-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:14px; margin-bottom:22px; }
    .ops-stat { background:#fff; border:1px solid var(--line); border-radius:18px; padding:16px 18px; position:relative; overflow:hidden; transition:transform .2s, box-shadow .2s; }
    .ops-stat:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgba(15,23,42,.08); }
    .ops-stat::after { content:''; position:absolute; right:-18px; top:-18px; width:64px; height:64px; border-radius:50%; background:var(--accent,rgba(51,65,85,.06)); }
    .ops-stat .val { font-size:1.7rem; font-weight:800; color:var(--slate-d); line-height:1; }
    .ops-stat .lbl { font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--muted); margin-top:8px; }
    .ops-stat .ico { position:absolute; right:14px; top:14px; font-size:1rem; color:var(--icon,#94a3b8); z-index:1; }

    /* ── Filtre bar ── */
    .ops-toolbar { display:flex; flex-wrap:wrap; gap:10px; align-items:center; background:#fff; border:1px solid var(--line); border-radius:16px; padding:12px 14px; margin-bottom:22px; }
    .ops-search { flex:1; min-width:220px; display:flex; align-items:center; gap:8px; background:#f8fafc; border:1px solid var(--line); border-radius:11px; padding:9px 13px; color:var(--muted); }
    .ops-search input { border:none; outline:none; background:transparent; width:100%; font-size:.9rem; color:#0f172a; }
    .ops-select { border:1px solid var(--line); border-radius:11px; padding:9px 12px; font-size:.85rem; font-weight:600; color:#334155; background:#fff; cursor:pointer; }
    .ops-pending-link { margin-left:auto; display:inline-flex; align-items:center; gap:8px; padding:9px 15px; border-radius:11px; background:#f1f5f9; border:1px solid var(--line); color:#334155; font-size:.83rem; font-weight:700; transition:all .2s; }
    .ops-pending-link:hover { background:#334155; color:#fff; }
    .ops-back-link { display:inline-flex; align-items:center; gap:8px; padding:9px 15px; border-radius:11px; background:#f1f5f9; border:1px solid var(--line); color:#334155; font-size:.83rem; font-weight:700; transition:all .2s; }
    .ops-back-link:hover { background:#334155; color:#fff; }

    /* ── Gün grubu ── */
    .ops-daygroup { margin-bottom:26px; }
    .ops-dayhead { display:flex; align-items:center; gap:12px; margin-bottom:14px; }
    .ops-daychip { display:inline-flex; flex-direction:column; align-items:center; justify-content:center; min-width:58px; padding:8px 10px; border-radius:14px; background:linear-gradient(135deg,#334155,#1e293b); color:#fff; box-shadow:0 6px 16px rgba(30,41,59,.25); }
    .ops-daychip .d { font-size:1.3rem; font-weight:800; line-height:1; }
    .ops-daychip .m { font-size:.62rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; opacity:.85; margin-top:3px; }
    .ops-dayhead .wday { font-size:.95rem; font-weight:800; color:#1e293b; }
    .ops-dayhead .cnt { font-size:.75rem; color:var(--muted); font-weight:600; }
    .ops-dayline { flex:1; height:1px; background:linear-gradient(90deg,var(--line),transparent); }

    /* ── Kalkış kartları ── */
    .ops-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(340px,1fr)); gap:16px; }
    .ops-card { background:#fff; border:1px solid var(--line); border-radius:20px; padding:18px; cursor:pointer; position:relative; transition:transform .2s, box-shadow .2s, border-color .2s; overflow:hidden; }
    .ops-card::before { content:''; position:absolute; left:0; top:0; bottom:0; width:5px; background:var(--tcolor,#334155); }
    .ops-card:hover { transform:translateY(-4px); box-shadow:0 16px 36px rgba(15,23,42,.12); border-color:#cbd5e1; }
    .ops-card.is-cancelled { opacity:.72; }
    .ops-card.is-cancelled::before { background:#ef4444; }

    .ops-card-top { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-bottom:14px; }
    .ops-type { display:inline-flex; align-items:center; gap:6px; font-size:.68rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:var(--tcolor,#334155); }
    .ops-type .dot { width:8px; height:8px; border-radius:50%; background:var(--tcolor,#334155); }
    .ops-tourname { font-size:1rem; font-weight:800; color:#0f172a; line-height:1.3; margin-top:6px; }
    .ops-code { font-size:.7rem; font-weight:700; color:#94a3b8; font-family:'Courier New',monospace; }

    /* doluluk halkası */
    .ops-ring { --pct:0; width:56px; height:56px; border-radius:50%; flex-shrink:0; display:flex; align-items:center; justify-content:center; background:conic-gradient(var(--rcolor,#334155) calc(var(--pct)*1%), #eef2f6 0); }
    .ops-ring .inner { width:44px; height:44px; border-radius:50%; background:#fff; display:flex; flex-direction:column; align-items:center; justify-content:center; }
    .ops-ring .inner .n { font-size:.8rem; font-weight:800; color:#0f172a; line-height:1; }
    .ops-ring .inner .t { font-size:.5rem; font-weight:700; color:#94a3b8; letter-spacing:.03em; }

    .ops-badge { display:inline-flex; align-items:center; gap:6px; padding:6px 11px; border-radius:9px; font-size:.72rem; font-weight:800; margin-bottom:12px; }

    .ops-meta { display:flex; flex-wrap:wrap; gap:14px; margin-bottom:12px; }
    .ops-meta-item { display:flex; align-items:center; gap:7px; font-size:.8rem; color:#475569; font-weight:600; }
    .ops-meta-item i { color:#94a3b8; width:14px; text-align:center; }

    .ops-svc { display:flex; gap:7px; margin-bottom:12px; }
    .ops-svc span { width:26px; height:26px; border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:.7rem; border:1px solid var(--line); background:#f8fafc; color:#cbd5e1; }
    .ops-svc span.on { background:#dcfce7; border-color:#bbf7d0; color:#16a34a; }

    .ops-card-foot { display:flex; align-items:center; gap:8px; padding-top:13px; border-top:1px dashed var(--line); }
    .ops-rev { font-size:.9rem; font-weight:800; color:#0f172a; }
    .ops-rev small { font-size:.65rem; font-weight:700; color:#94a3b8; display:block; }
    .ops-acts { margin-left:auto; display:flex; gap:6px; }
    .ops-btn { width:34px; height:34px; border-radius:10px; border:1px solid var(--line); background:#fff; color:#64748b; display:inline-flex; align-items:center; justify-content:center; transition:all .18s; cursor:pointer; }
    .ops-btn:hover { border-color:#94a3b8; color:#1e293b; background:#f8fafc; }
    .ops-btn.ok:hover { background:#dcfce7; border-color:#86efac; color:#16a34a; }
    .ops-btn.no:hover { background:#fee2e2; border-color:#fca5a5; color:#dc2626; }

    .ops-empty { text-align:center; padding:70px 20px; color:var(--muted); }
    .ops-empty i.big { font-size:2.6rem; color:#cbd5e1; margin-bottom:16px; }
    .ops-empty h5 { color:#334155; font-weight:800; }
    .ops-tourlink { cursor:pointer; transition:color .15s; }
    .ops-tourlink:hover { color:#334155 !important; text-decoration:underline; text-underline-offset:3px; }
    .ops-res-chip { display:inline-flex; align-items:center; gap:6px; font-size:.74rem; font-weight:700; color:#475569; background:#f1f5f9; border:1px solid #e2e8f0; border-radius:9px; padding:6px 10px; margin-bottom:12px; }
    .ops-res-chip i { color:#334155; }
    .ops-res-chip .dot { color:#cbd5e1; }
    .ops-res-chip b { color:#0f172a; }
</style>
