@import url('https://fonts.googleapis.com/css2?family=DM+Mono&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#142326;--muted:#6d7b7e;--paper:#f4f7f5;--white:#fff;--line:#e1e8e4;--deep:#102f35;--deep2:#17464d;--mint:#b8ef76;--green:#29915b;--green-soft:#e7f7ed;--orange:#f3a64d;--orange-soft:#fff3e2;--blue:#4e7ff0;--blue-soft:#eaf0ff;--red:#d85d50;--red-soft:#ffebe8;--shadow:0 20px 60px rgba(17,48,53,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:14px Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font-family:inherit}button{border:0;cursor:pointer}input,select{margin-top:8px;width:100%;padding:13px 14px;border:1px solid #d3ded8;border-radius:11px;font:inherit;background:#fff;color:var(--ink);transition:.2s}input:focus,select:focus{outline:3px solid rgba(184,239,118,.28);border-color:#8fc75b}.eyebrow{font:11px 'DM Mono',monospace;letter-spacing:.12em;color:#668084}.muted{color:var(--muted);line-height:1.6}.brand{display:flex;align-items:center;gap:10px}.brand strong{display:block;font-size:13px;margin-top:2px}.brand-mark{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--deep);color:var(--mint);font-weight:800;letter-spacing:-.05em;box-shadow:0 8px 20px rgba(16,47,53,.16)}.brand-mark.small{width:36px;height:36px;border-radius:10px;font-size:12px}.notice{padding:12px 14px;border-radius:10px;margin:18px 0;font-weight:700}.success{background:var(--green-soft);color:#24663f}.error{background:var(--red-soft);color:#96382d}.hidden{display:none!important}
/* FRONTEND */
.front-page{min-height:100vh;overflow-x:hidden;position:relative;background:linear-gradient(135deg,#f5f8f6 0%,#edf5ef 100%)}.front-glow{position:fixed;border-radius:50%;filter:blur(2px);pointer-events:none}.glow-one{width:360px;height:360px;background:rgba(184,239,118,.18);right:-100px;top:80px}.glow-two{width:260px;height:260px;background:rgba(78,127,240,.07);left:-120px;bottom:30px}.front-nav{max-width:1240px;margin:auto;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.nav-link{font-weight:800;color:var(--deep)}.shell{max-width:1180px;margin:0 auto;min-height:calc(100vh - 110px);padding:50px 28px 70px;display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;align-items:center;position:relative;z-index:1}.hero h1{font-size:clamp(48px,6vw,76px);line-height:.98;letter-spacing:-.075em;margin:16px 0 24px;max-width:600px}.hero h1 em{font-style:normal;color:var(--green)}.hero p{font-size:17px;line-height:1.8;color:var(--muted);max-width:500px}.hero-points{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}.hero-points span{background:#fff;border:1px solid var(--line);padding:9px 12px;border-radius:999px;font-size:11px;font-weight:800;color:#385457}.card,.login-card,.table-card{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.card{padding:34px;max-width:650px}.form-heading{display:flex;gap:14px;align-items:center}.icon-box{width:46px;height:46px;border-radius:13px;background:var(--deep);color:var(--mint);display:grid;place-items:center;font-size:20px}.card h2{font-size:27px;letter-spacing:-.05em;margin:3px 0}.card .muted{margin:3px 0 0}form{margin-top:26px}label{display:block;font-weight:800;margin:18px 0 0}.grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.amount-input{position:relative}.amount-input span{position:absolute;left:14px;top:20px;font-weight:800;color:var(--green);z-index:1}.amount-input input{padding-left:32px}.card form>button,.login-card form>button{width:100%;margin-top:24px;background:var(--deep);color:#fff;padding:15px 18px;border-radius:11px;font-weight:800;font-size:14px;box-shadow:0 12px 25px rgba(16,47,53,.14)}.card form>button:hover,.login-card button:hover{background:var(--deep2)}button span{float:right;color:var(--mint);font-size:20px;line-height:12px}footer{text-align:center;padding:22px;color:#7b898b;font-size:11px}
/* LOGIN */
.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#e8f1e9,#f7faf8);padding:20px}.login-card{padding:38px;width:min(440px,100%)}.login-card .brand-mark{margin-bottom:22px}.login-card h1{font-size:40px;letter-spacing:-.065em;margin:12px 0 6px}.login-card>a{display:block;text-align:center;margin-top:18px;color:var(--muted);font-weight:700}
/* ADMIN */
.admin-page{min-height:100vh;background:#f4f7f5}.topbar{height:76px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 max(22px,calc((100vw - 1280px)/2));position:sticky;top:0;z-index:100;backdrop-filter:blur(12px)}.nav-actions{display:flex;align-items:center;gap:7px}.nav-actions .nav-link,.btn-light,.logout{padding:10px 12px;border-radius:9px;font-size:12px;font-weight:800}.btn-light{background:#eef3ef}.logout{color:var(--muted)}.dashboard{max-width:1280px;margin:0 auto;padding:42px 24px 70px}.dashboard-hero{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.dashboard h1{font-size:40px;letter-spacing:-.065em;margin:7px 0}.dashboard-hero .muted{margin:0}.new-entry{background:var(--deep);color:#fff;padding:12px 16px;border-radius:10px;font-weight:800;box-shadow:0 10px 20px rgba(16,47,53,.12)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:22px}.stat-card{padding:21px 22px;border-radius:17px;color:#fff;position:relative;overflow:hidden;box-shadow:0 10px 28px rgba(17,48,53,.08)}.stat-card:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:-38px;bottom:-55px;background:#fff;opacity:.08}.stat-card span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;opacity:.85}.stat-card b{display:block;font-size:30px;letter-spacing:-.06em;margin:8px 0 2px}.stat-card small{opacity:.72}.stat-blue{background:linear-gradient(135deg,#3e6fe0,#5a86ed)}.stat-green{background:linear-gradient(135deg,#238652,#35a667)}.stat-orange{background:linear-gradient(135deg,#dd8b31,#f0aa52)}.table-card{overflow:hidden}.table-head{padding:22px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:end;gap:20px}.table-head h2{margin:3px 0 0;font-size:20px;letter-spacing:-.04em}.table-head p{font-size:11px;margin:3px 0 0}.table-head input{max-width:290px;margin:0;background:#f7faf8}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:1280px}th{text-align:left;font:10px 'DM Mono';letter-spacing:.08em;color:#758487;padding:13px 20px;background:#fafcfb;white-space:nowrap}td{padding:15px 20px;border-top:1px solid #edf1ee;vertical-align:top}td b,td small{display:block}td small{color:var(--muted);margin-top:4px;font-size:10px}.car-pill{display:inline-block!important;background:#edf3ee;padding:4px 7px;border-radius:5px;width:max-content;color:#47605f!important}.rent{color:var(--deep);font-size:14px}.schedule-form{margin:0;min-width:420px}.schedule-fields{display:grid;grid-template-columns:1fr 1fr;gap:7px}.schedule-fields label{margin:0;font-size:9px;color:#68797b;text-transform:uppercase;letter-spacing:.04em}.schedule-fields input{margin-top:5px;padding:8px;font-size:10px;border-radius:8px}.save{background:var(--deep);color:#fff;border-radius:7px;padding:7px 10px;font-size:10px;font-weight:800}.schedule-save{margin-top:7px}.payment-form{margin:0;min-width:170px}.toggle{display:flex;gap:4px}.toggle button{padding:7px 9px;background:#eef2ef;color:#657476;border-radius:6px;font-size:10px;font-weight:800}.toggle button.active{background:#d9f4a9;color:#2c641c}.toggle button.active.no{background:#ffe1dc;color:#9a3d2e}.pay-extra{display:grid;grid-template-columns:1fr 1fr auto;gap:5px;margin-top:7px}.pay-extra input,.pay-extra select{margin:0;padding:7px;font-size:10px;min-width:0}.empty{text-align:center;color:var(--muted);padding:45px}
@media(max-width:900px){.shell{grid-template-columns:1fr;gap:35px;padding-top:35px}.hero{text-align:center}.hero p{margin-left:auto;margin-right:auto}.hero-points{justify-content:center}.card{max-width:100%}.dashboard{padding:30px 18px}.schedule-form{min-width:390px}}
@media(max-width:760px){body{font-size:13px}.front-nav{padding:16px 15px}.front-nav .nav-link{font-size:10px}.shell{padding:28px 15px 45px}.hero h1{font-size:46px}.hero p{font-size:14px}.card{padding:21px 17px;border-radius:16px}.card h2{font-size:22px}.grid{grid-template-columns:1fr;gap:0}.topbar{height:64px;padding:0 13px}.topbar .nav-link{display:none}.btn-light{font-size:10px;padding:8px}.logout{display:none}.dashboard{padding:24px 11px 70px}.dashboard-hero{align-items:center;margin-bottom:18px}.dashboard h1{font-size:29px}.dashboard-hero .muted{font-size:10px}.new-entry{font-size:10px;padding:10px 11px;white-space:nowrap}.stats{gap:6px}.stat-card{padding:13px 10px;border-radius:11px}.stat-card span{font-size:8px;line-height:1.25}.stat-card b{font-size:16px;margin-top:5px;white-space:nowrap}.stat-card small{display:none}.table-card{border-radius:14px}.table-head{display:block;padding:14px}.table-head h2{font-size:16px}.table-head input{max-width:none;width:100%;height:39px;margin-top:9px;font-size:11px}table{min-width:0}thead{display:none}table,tbody,tr,td{display:block;width:100%}tbody{padding:7px}tbody tr{background:#fff;border:1px solid #e3e9e5;border-radius:12px;margin-bottom:9px;padding:11px;box-shadow:0 5px 16px rgba(17,48,53,.04)}td{padding:0;border:0}td:nth-child(1){padding-bottom:9px;border-bottom:1px solid #edf1ee;margin-bottom:10px}td:nth-child(2){padding-bottom:10px}td:nth-child(3),td:nth-child(4){display:block}td:nth-child(3):before{content:'Pickup';display:block;font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#788688;font-weight:800;margin-bottom:3px}td:nth-child(4):before{content:'Return';display:block;font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#788688;font-weight:800;margin:8px 0 3px}.schedule-form{min-width:0;background:#f7faf8;padding:9px;border-radius:9px}.schedule-fields{grid-template-columns:1fr}.schedule-fields label{font-size:8px}.schedule-fields input{height:35px;font-size:9px}.schedule-save{width:100%;height:35px}.schedule-form{display:block}td:nth-child(5){display:inline-block;margin-top:10px;background:var(--deep);color:#fff;padding:7px 9px;border-radius:7px}.payment-form{min-width:0;margin-top:10px;padding-top:10px;border-top:1px solid #edf1ee}.toggle button{flex:1;height:35px}.pay-extra{grid-template-columns:1fr 1fr}.pay-extra .save{grid-column:1/-1;height:35px}.login-card{padding:27px 20px}.login-card h1{font-size:32px}}
@media(max-width:380px){.hero h1{font-size:40px}.stats{gap:4px}.stat-card{padding:11px 7px}.stat-card b{font-size:14px}.dashboard h1{font-size:25px}}


/* =========================================================
   ADMIN UI — MOBILE-FIRST READABILITY & UX UPGRADE
   Added as overrides so existing functionality/layout remains intact.
   ========================================================= */

@media (max-width: 760px){

  /* Base mobile readability */
  body{
    font-size:14px;
    line-height:1.45;
  }

  .admin-page{
    background:#f3f6f4;
  }

  /* Sticky mobile header */
  .topbar{
    height:64px;
    padding:0 14px;
    box-shadow:0 2px 12px rgba(16,47,53,.06);
  }

  .topbar .brand{
    gap:8px;
  }

  .topbar .brand strong{
    font-size:14px;
  }

  .topbar .brand-mark.small{
    width:36px;
    height:36px;
    font-size:12px;
  }

  .btn-light{
    min-height:40px;
    padding:9px 13px;
    font-size:12px;
  }

  /* Dashboard heading */
  .dashboard{
    padding:20px 12px 60px;
  }

  .dashboard-hero{
    gap:12px;
    margin-bottom:18px;
    align-items:center;
  }

  .dashboard h1{
    font-size:30px;
    line-height:1.05;
    letter-spacing:-.055em;
    margin:5px 0;
  }

  .dashboard-hero .muted{
    font-size:12px;
    line-height:1.45;
  }

  .new-entry{
    min-height:42px;
    padding:10px 13px;
    font-size:12px;
    border-radius:10px;
  }

  /* Stats: readable even on narrow phones */
  .stats{
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    margin-bottom:16px;
  }

  .stat-card{
    min-height:92px;
    padding:13px 11px;
    border-radius:13px;
  }

  .stat-card span{
    font-size:9px;
    line-height:1.3;
    letter-spacing:.04em;
  }

  .stat-card b{
    font-size:20px;
    line-height:1.1;
    margin:8px 0 3px;
    letter-spacing:-.04em;
  }

  .stat-card small{
    display:block;
    font-size:9px;
    line-height:1.25;
  }

  /* Entries container */
  .table-card{
    border-radius:16px;
    box-shadow:0 8px 28px rgba(17,48,53,.06);
  }

  .table-head{
    display:block;
    padding:16px;
  }

  .table-head h2{
    font-size:18px;
    line-height:1.2;
  }

  .table-head p{
    font-size:11px;
    margin-top:4px;
  }

  .table-head input{
    width:100%;
    max-width:none;
    height:44px;
    margin-top:12px;
    padding:10px 13px;
    font-size:13px;
    border-radius:10px;
  }

  /* Convert table rows into comfortable cards */
  .table-wrap{
    overflow:visible;
  }

  table,
  tbody,
  tr,
  td{
    display:block;
    width:100%;
  }

  table{
    min-width:0;
  }

  thead{
    display:none;
  }

  tbody{
    padding:8px;
  }

  tbody tr{
    position:relative;
    background:#fff;
    border:1px solid #e0e8e3;
    border-radius:15px;
    margin-bottom:12px;
    padding:14px;
    box-shadow:0 5px 18px rgba(17,48,53,.045);
  }

  td{
    padding:0;
    border:0;
    font-size:14px;
    line-height:1.45;
  }

  td b{
    font-size:15px;
    line-height:1.35;
  }

  td small{
    font-size:12px;
    line-height:1.45;
    margin-top:4px;
  }

  /* ID / person section */
  td:nth-child(1){
    padding:0 0 12px;
    margin:0 0 12px;
    border-bottom:1px solid #edf1ee;
  }

  td:nth-child(1) b{
    font-size:16px;
  }

  /* Car */
  td:nth-child(2){
    padding:0 0 12px;
    margin-bottom:2px;
  }

  .car-pill{
    padding:6px 9px;
    border-radius:7px;
    font-size:12px !important;
    font-weight:800;
  }

  /* Pickup / return blocks */
  td:nth-child(3),
  td:nth-child(4){
    padding:10px 11px;
    margin-top:7px;
    background:#f7faf8;
    border:1px solid #e8efeb;
    border-radius:10px;
  }

  td:nth-child(3):before,
  td:nth-child(4):before{
    display:block;
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.09em;
    color:#68797b;
    font-weight:800;
    margin-bottom:4px;
  }

  td:nth-child(3):before{
    content:'Pickup';
  }

  td:nth-child(4):before{
    content:'Return';
  }

  td:nth-child(3) b,
  td:nth-child(4) b{
    font-size:13px;
  }

  /* Coordinator / rent area */
  td:nth-child(5){
    display:block;
    margin-top:11px;
    padding:10px 11px;
    background:#eef4f0;
    color:var(--deep);
    border-radius:10px;
    font-size:13px;
  }

  td:nth-child(5) b{
    font-size:13px;
  }

  /* Schedule editor */
  .schedule-form{
    min-width:0;
    width:100%;
    margin-top:4px;
    padding:12px;
    background:#f5f9f6;
    border:1px solid #e2ebe5;
    border-radius:11px;
  }

  .schedule-fields{
    grid-template-columns:1fr 1fr;
    gap:9px;
  }

  .schedule-fields label{
    font-size:9px;
    line-height:1.3;
    margin:0;
  }

  .schedule-fields input{
    width:100%;
    height:42px;
    margin-top:5px;
    padding:9px 10px;
    font-size:12px;
    border-radius:9px;
  }

  .schedule-save{
    width:100%;
    height:42px;
    margin-top:9px;
    padding:0 12px;
    font-size:12px;
    border-radius:9px;
  }

  .save{
    min-height:42px;
    padding:9px 12px;
    font-size:12px;
  }

  /* Payment section */
  .payment-form{
    min-width:0;
    width:100%;
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid #edf1ee;
  }

  .toggle{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px;
  }

  .toggle button{
    min-height:42px;
    padding:9px 10px;
    border-radius:8px;
    font-size:12px;
  }

  .pay-extra{
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:9px;
  }

  .pay-extra input,
  .pay-extra select{
    height:42px;
    padding:9px 10px;
    font-size:12px;
    border-radius:8px;
  }

  .pay-extra .save{
    grid-column:1/-1;
    width:100%;
    height:42px;
  }

  /* Empty state */
  .empty{
    padding:40px 18px;
    font-size:13px;
  }
}

/* Extra-small phones */
@media (max-width:380px){

  .dashboard{
    padding-left:9px;
    padding-right:9px;
  }

  .dashboard h1{
    font-size:26px;
  }

  .dashboard-hero .muted{
    font-size:11px;
  }

  .new-entry{
    padding:9px 10px;
    font-size:11px;
  }

  .stats{
    gap:5px;
  }

  .stat-card{
    min-height:86px;
    padding:11px 8px;
  }

  .stat-card span{
    font-size:8px;
  }

  .stat-card b{
    font-size:17px;
  }

  .stat-card small{
    font-size:8px;
  }

  tbody{
    padding:6px;
  }

  tbody tr{
    padding:12px;
  }

  .schedule-fields{
    grid-template-columns:1fr;
  }
}
/* =========================================================
   FINAL ADMIN DASHBOARD — DESKTOP FULL WIDTH + MOBILE
   Readability / spacing / responsive override
   ========================================================= */

/* ---------- Desktop / large screens ---------- */
@media (min-width: 761px){

  .admin-page{
    width:100%;
    min-width:0;
  }

  .topbar{
    width:100%;
    padding-left:32px;
    padding-right:32px;
  }

  .dashboard{
    width:100%;
    max-width:none;
    margin:0;
    padding:34px 32px 70px;
  }

  .dashboard-hero{
    width:100%;
    margin-bottom:26px;
  }

  .dashboard h1{
    font-size:42px;
  }

  .stats{
    width:100%;
    gap:18px;
    margin-bottom:24px;
  }

  .stat-card{
    min-height:125px;
    padding:24px 26px;
    border-radius:18px;
  }

  .stat-card span{
    font-size:12px;
  }

  .stat-card b{
    font-size:34px;
    margin:10px 0 4px;
  }

  .stat-card small{
    font-size:12px;
  }

  .table-card{
    width:100%;
    max-width:none;
    border-radius:18px;
  }

  .table-head{
    padding:22px 26px;
  }

  .table-head h2{
    font-size:22px;
  }

  .table-head p{
    font-size:12px;
  }

  .table-head input{
    max-width:340px;
    height:44px;
    font-size:13px;
  }

  .table-wrap{
    width:100%;
    overflow-x:auto;
    overflow-y:visible;
  }

  table{
    width:100%;
    min-width:1400px;
    table-layout:auto;
  }

  th{
    padding:15px 22px;
    font-size:11px;
  }

  td{
    padding:18px 22px;
    font-size:14px;
    line-height:1.45;
  }

  td b{
    font-size:15px;
    line-height:1.35;
  }

  td small{
    font-size:11px;
    line-height:1.45;
  }

  .car-pill{
    padding:6px 9px;
    font-size:12px;
  }

  .rent{
    font-size:15px;
    font-weight:800;
  }

  .schedule-form{
    min-width:430px;
  }

  .schedule-fields{
    gap:9px;
  }

  .schedule-fields input{
    min-height:38px;
    font-size:11px;
  }

  .save,
  .toggle button{
    min-height:36px;
    font-size:11px;
  }

  .payment-form{
    min-width:190px;
  }

  .pay-extra input,
  .pay-extra select{
    min-height:36px;
    font-size:11px;
  }
}


/* ---------- Tablet ---------- */
@media (min-width:761px) and (max-width:1100px){

  .topbar{
    padding-left:20px;
    padding-right:20px;
  }

  .dashboard{
    padding-left:20px;
    padding-right:20px;
  }

  .dashboard h1{
    font-size:36px;
  }

  table{
    min-width:1250px;
  }

  th,
  td{
    padding-left:16px;
    padding-right:16px;
  }
}


/* ---------- Mobile ---------- */
@media (max-width:760px){

  html,
  body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }

  body{
    font-size:14px;
    line-height:1.45;
  }

  .admin-page{
    width:100%;
    min-height:100vh;
    background:#f3f6f4;
  }

  .topbar{
    width:100%;
    height:64px;
    padding:0 14px;
    position:sticky;
    top:0;
    box-shadow:0 2px 12px rgba(16,47,53,.06);
  }

  .topbar .brand{
    gap:8px;
  }

  .topbar .brand strong{
    font-size:14px;
  }

  .topbar .brand-mark.small{
    width:36px;
    height:36px;
    font-size:12px;
  }

  .btn-light{
    min-height:40px;
    padding:9px 13px;
    font-size:12px;
  }

  .dashboard{
    width:100%;
    max-width:none;
    margin:0;
    padding:20px 10px 60px;
  }

  .dashboard-hero{
    width:100%;
    gap:12px;
    margin-bottom:18px;
    align-items:center;
  }

  .dashboard h1{
    font-size:30px;
    line-height:1.05;
    letter-spacing:-.055em;
    margin:5px 0;
  }

  .dashboard-hero .muted{
    font-size:12px;
    line-height:1.45;
  }

  .new-entry{
    min-height:42px;
    padding:10px 13px;
    font-size:12px;
    border-radius:10px;
    white-space:nowrap;
  }

  /* Stats remain 3 columns but become readable */
  .stats{
    width:100%;
    grid-template-columns:repeat(3,1fr);
    gap:7px;
    margin-bottom:16px;
  }

  .stat-card{
    min-width:0;
    min-height:92px;
    padding:13px 10px;
    border-radius:13px;
  }

  .stat-card span{
    font-size:9px;
    line-height:1.3;
    letter-spacing:.04em;
  }

  .stat-card b{
    font-size:20px;
    line-height:1.1;
    margin:8px 0 3px;
    letter-spacing:-.04em;
  }

  .stat-card small{
    display:block;
    font-size:9px;
    line-height:1.25;
  }

  /* Full-width entries card */
  .table-card{
    width:100%;
    max-width:none;
    border-radius:16px;
    box-shadow:0 8px 28px rgba(17,48,53,.06);
  }

  .table-head{
    display:block;
    width:100%;
    padding:16px;
  }

  .table-head h2{
    font-size:18px;
    line-height:1.2;
  }

  .table-head p{
    font-size:11px;
    margin-top:4px;
  }

  .table-head input{
    width:100%;
    max-width:none;
    height:44px;
    margin-top:12px;
    padding:10px 13px;
    font-size:13px;
    border-radius:10px;
  }

  .table-wrap{
    width:100%;
    overflow:visible;
  }

  table,
  tbody,
  tr,
  td{
    display:block;
    width:100%;
  }

  table{
    min-width:0;
    border-collapse:separate;
  }

  thead{
    display:none;
  }

  tbody{
    width:100%;
    padding:8px;
  }

  tbody tr{
    position:relative;
    width:100%;
    background:#fff;
    border:1px solid #e0e8e3;
    border-radius:15px;
    margin-bottom:12px;
    padding:14px;
    box-shadow:0 5px 18px rgba(17,48,53,.045);
  }

  td{
    padding:0;
    border:0;
    font-size:14px;
    line-height:1.45;
  }

  td b{
    font-size:15px;
    line-height:1.35;
  }

  td small{
    font-size:12px;
    line-height:1.45;
    margin-top:4px;
  }

  td:nth-child(1){
    padding:0 0 12px;
    margin:0 0 12px;
    border-bottom:1px solid #edf1ee;
  }

  td:nth-child(1) b{
    font-size:16px;
  }

  td:nth-child(2){
    padding:0 0 12px;
    margin-bottom:2px;
  }

  .car-pill{
    padding:6px 9px;
    border-radius:7px;
    font-size:12px !important;
    font-weight:800;
  }

  td:nth-child(3),
  td:nth-child(4){
    padding:10px 11px;
    margin-top:7px;
    background:#f7faf8;
    border:1px solid #e8efeb;
    border-radius:10px;
  }

  td:nth-child(3):before,
  td:nth-child(4):before{
    display:block;
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.09em;
    color:#68797b;
    font-weight:800;
    margin-bottom:4px;
  }

  td:nth-child(3):before{content:'Pickup';}
  td:nth-child(4):before{content:'Return';}

  td:nth-child(3) b,
  td:nth-child(4) b{
    font-size:13px;
  }

  td:nth-child(5){
    display:block;
    width:100%;
    margin-top:11px;
    padding:10px 11px;
    background:#eef4f0;
    color:var(--deep);
    border-radius:10px;
    font-size:13px;
  }

  td:nth-child(5) b{
    font-size:13px;
  }

  .schedule-form{
    width:100%;
    min-width:0;
    margin-top:4px;
    padding:12px;
    background:#f5f9f6;
    border:1px solid #e2ebe5;
    border-radius:11px;
  }

  .schedule-fields{
    grid-template-columns:1fr 1fr;
    gap:9px;
  }

  .schedule-fields label{
    font-size:9px;
    line-height:1.3;
    margin:0;
  }

  .schedule-fields input{
    width:100%;
    height:42px;
    margin-top:5px;
    padding:9px 10px;
    font-size:12px;
    border-radius:9px;
  }

  .schedule-save{
    width:100%;
    height:42px;
    margin-top:9px;
    padding:0 12px;
    font-size:12px;
    border-radius:9px;
  }

  .save{
    min-height:42px;
    padding:9px 12px;
    font-size:12px;
  }

  .payment-form{
    width:100%;
    min-width:0;
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid #edf1ee;
  }

  .toggle{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px;
  }

  .toggle button{
    min-height:42px;
    padding:9px 10px;
    border-radius:8px;
    font-size:12px;
  }

  .pay-extra{
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-top:9px;
  }

  .pay-extra input,
  .pay-extra select{
    width:100%;
    height:42px;
    padding:9px 10px;
    font-size:12px;
    border-radius:8px;
  }

  .pay-extra .save{
    grid-column:1/-1;
    width:100%;
    height:42px;
  }

  .empty{
    padding:40px 18px;
    font-size:13px;
  }
}


/* ---------- Small phones ---------- */
@media (max-width:480px){

  .dashboard{
    padding-left:8px;
    padding-right:8px;
  }

  .dashboard-hero{
    align-items:flex-start;
  }

  .dashboard h1{
    font-size:27px;
  }

  .dashboard-hero .muted{
    font-size:11px;
  }

  .new-entry{
    padding:9px 10px;
    font-size:11px;
  }

  .stats{
    gap:5px;
  }

  .stat-card{
    min-height:88px;
    padding:11px 8px;
  }

  .stat-card span{
    font-size:8px;
  }

  .stat-card b{
    font-size:17px;
  }

  .stat-card small{
    font-size:8px;
  }

  tbody{
    padding:6px;
  }

  tbody tr{
    padding:12px;
  }

  .schedule-fields{
    grid-template-columns:1fr;
  }
}


/* ---------- Very small phones ---------- */
@media (max-width:360px){

  .dashboard h1{
    font-size:24px;
  }

  .new-entry{
    font-size:10px;
    padding:8px 9px;
  }

  .stat-card{
    padding:10px 7px;
  }

  .stat-card b{
    font-size:15px;
  }

  .table-head{
    padding:13px;
  }

  tbody tr{
    padding:11px;
  }
}


/* =========================================================
   WAPIFLOW ADMIN — SCREENSHOT MATCH
   Visual target: dark left sidebar + spacious dashboard +
   3 statistic cards + 3-column rental entry cards.
   Existing HTML/PHP/JS structure is preserved.
   ========================================================= */

:root{
  --wf-bg:#f4f8fc;
  --wf-sidebar:#082c31;
  --wf-sidebar-2:#0d3b40;
  --wf-text:#10223b;
  --wf-muted:#718197;
  --wf-border:#dfe8f1;
  --wf-card:#ffffff;
  --wf-green:#b8ef76;
  --wf-green-dark:#0f3b3e;
  --wf-blue-bg:#edf4ff;
  --wf-green-bg:#ecfbf3;
  --wf-orange-bg:#fff5e9;
  --wf-shadow:0 12px 32px rgba(20,49,73,.07);
}

/* ---------- Overall page ---------- */

.admin-page{
  min-height:100vh;
  background:
    radial-gradient(circle at 75% 8%,rgba(112,154,255,.08),transparent 28%),
    linear-gradient(135deg,#f7faff 0%,#f2f7fb 100%);
  color:var(--wf-text);
}

/* ---------- Sidebar ----------
   If your HTML contains .sidebar/.sidebar-nav, this matches
   the screenshot directly.
*/

.sidebar,
.admin-sidebar{
  position:fixed;
  inset:0 auto 0 0;
  width:212px;
  min-height:100vh;
  z-index:200;
  padding:18px 12px;
  color:#fff;
  background:
    radial-gradient(circle at 35% 75%,rgba(70,130,92,.16),transparent 28%),
    linear-gradient(180deg,#0b3035 0%,#07252c 100%);
  box-shadow:8px 0 30px rgba(7,35,43,.08);
  display:flex;
  flex-direction:column;
}

.sidebar .brand,
.admin-sidebar .brand{
  padding:0 6px 22px;
  margin-bottom:4px;
}

.sidebar .brand strong,
.admin-sidebar .brand strong{
  color:#fff;
  font-size:12px;
}

.sidebar .brand-mark,
.admin-sidebar .brand-mark{
  width:48px;
  height:48px;
  border-radius:14px;
  background:#123f43;
  color:var(--wf-green);
  border:1px solid rgba(184,239,118,.22);
}

.sidebar-nav,
.admin-sidebar nav,
.sidebar .nav-menu,
.admin-sidebar .nav-menu{
  display:flex;
  flex-direction:column;
  gap:6px;
}

.sidebar-nav a,
.admin-sidebar nav a,
.sidebar .nav-link,
.admin-sidebar .nav-link{
  display:flex;
  align-items:center;
  gap:13px;
  min-height:48px;
  padding:0 14px;
  border-radius:11px;
  color:#c5d2d5;
  font-size:13px;
  font-weight:700;
  transition:.2s ease;
}

.sidebar-nav a:hover,
.admin-sidebar nav a:hover,
.sidebar .nav-link:hover,
.admin-sidebar .nav-link:hover{
  background:rgba(255,255,255,.07);
  color:#fff;
}

.sidebar-nav a.active,
.admin-sidebar nav a.active,
.sidebar .nav-link.active,
.admin-sidebar .nav-link.active{
  color:#fff;
  background:linear-gradient(135deg,#185f59,#174b4e);
  box-shadow:inset 0 0 0 1px rgba(184,239,118,.12);
}

.sidebar-footer,
.admin-sidebar .sidebar-footer{
  margin-top:auto;
  padding:20px 12px 4px;
  color:#8ea5a8;
  font-size:11px;
  line-height:1.6;
}

.sidebar-footer strong,
.admin-sidebar .sidebar-footer strong{
  display:block;
  color:#c9d6d7;
  font-size:10px;
  letter-spacing:.14em;
}

/* ---------- Main area ---------- */

.admin-page:has(.sidebar) .topbar,
.admin-page:has(.admin-sidebar) .topbar{
  margin-left:212px;
  width:calc(100% - 212px);
}

.admin-page:has(.sidebar) .dashboard,
.admin-page:has(.admin-sidebar) .dashboard{
  margin-left:212px;
  width:calc(100% - 212px);
  max-width:none;
  padding:28px 28px 60px;
}

/* ---------- Top actions ---------- */

.topbar{
  height:82px;
  background:rgba(255,255,255,.72);
  border-bottom:1px solid rgba(218,228,237,.85);
  box-shadow:0 3px 18px rgba(20,49,73,.035);
  padding:0 28px;
}

.topbar .brand{
  display:none;
}

.nav-actions{
  margin-left:auto;
  gap:10px;
}

.nav-actions .nav-link,
.btn-light,
.logout{
  min-height:40px;
  padding:10px 17px;
  border-radius:11px;
  background:#fff;
  border:1px solid #e2eaf1;
  color:#1c2d42;
  font-size:12px;
  font-weight:800;
  box-shadow:0 5px 15px rgba(20,49,73,.05);
}

.logout{
  background:#fff;
}

.btn-light:hover,
.logout:hover,
.nav-actions .nav-link:hover{
  background:#f6f9fc;
}

/* ---------- Dashboard heading ---------- */

.dashboard-hero{
  margin-bottom:25px;
}

.dashboard h1{
  color:#10213a;
  font-size:40px;
  font-weight:800;
  letter-spacing:-.065em;
  margin:4px 0 5px;
}

.dashboard-hero .eyebrow{
  color:#718096;
  font-size:11px;
  letter-spacing:.14em;
  font-weight:700;
}

.dashboard-hero .muted{
  color:#718197;
  font-size:14px;
}

.new-entry{
  padding:12px 18px;
  min-height:42px;
  border-radius:11px;
  background:linear-gradient(135deg,#103e40,#0b3033);
  box-shadow:0 10px 20px rgba(7,45,49,.16);
}

/* ---------- Stats ---------- */

.stats{
  gap:16px;
  margin-bottom:22px;
}

.stat-card{
  min-height:120px;
  padding:23px 26px;
  border-radius:15px;
  border:1px solid;
  box-shadow:none;
  overflow:hidden;
}

.stat-card span{
  font-size:11px;
  font-weight:800;
}

.stat-card b{
  font-size:30px;
  margin:7px 0 3px;
}

.stat-card small{
  font-size:11px;
}

.stat-blue{
  color:#2459d0;
  background:linear-gradient(135deg,#f5f8ff,#e8f0ff);
  border-color:#cbdcff;
}

.stat-green{
  color:#14734c;
  background:linear-gradient(135deg,#f4fff9,#e8faef);
  border-color:#c9eddc;
}

.stat-orange{
  color:#ad5c0c;
  background:linear-gradient(135deg,#fffaf3,#fff0df);
  border-color:#f4d8b5;
}

/* ---------- Entries outer card ---------- */

.table-card{
  width:100%;
  max-width:none;
  border-radius:16px;
  border:1px solid #e1e9f0;
  background:rgba(255,255,255,.96);
  box-shadow:0 8px 30px rgba(20,49,73,.055);
}

.table-head{
  padding:20px 18px 16px;
  border-bottom:0;
}

.table-head h2{
  color:#17263c;
  font-size:20px;
  font-weight:800;
}

.table-head p{
  color:#7a899b;
  font-size:11px;
}

.table-head input{
  height:42px;
  max-width:260px;
  border-color:#dce5ee;
  border-radius:11px;
  background:#fbfdff;
  box-shadow:0 3px 10px rgba(20,49,73,.025);
}

/* ---------- Rental cards ---------- */

@media (min-width:1101px){

  .table-wrap{
    overflow:visible;
    padding:0 14px 18px;
  }

  table{
    display:block;
    width:100%;
    min-width:0 !important;
  }

  thead{
    display:none;
  }

  tbody{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    padding:0;
  }

  tbody tr{
    position:relative;
    display:block;
    width:100%;
    min-width:0;
    margin:0;
    padding:16px;
    background:linear-gradient(145deg,#fff 0%,#fbfdff 100%);
    border:1px solid #e0e8ef;
    border-radius:15px;
    box-shadow:
      0 2px 0 rgba(15,50,65,.035),
      0 7px 18px rgba(15,50,65,.065);
    transition:.2s ease;
  }

  tbody tr:hover{
    transform:translateY(-3px);
    box-shadow:
      0 3px 0 rgba(15,50,65,.04),
      0 13px 28px rgba(15,50,65,.10);
  }

  tbody tr td{
    display:block;
    width:100%;
    padding:0;
    border:0;
    font-size:13px;
  }

  tbody tr td:nth-child(1){
    padding-bottom:10px;
    margin-bottom:10px;
    border-bottom:1px solid #edf1f5;
  }

  tbody tr td:nth-child(1) b{
    font-size:16px;
    color:#14243a;
  }

  tbody tr td:nth-child(1) small{
    font-size:10px;
    color:#8290a0;
  }

  tbody tr td:nth-child(2){
    padding-bottom:4px;
  }

  .car-pill{
    padding:6px 10px;
    border-radius:8px;
    background:#edf5f4;
    color:#245158 !important;
    font-size:11px !important;
  }

  tbody tr td:nth-child(3),
  tbody tr td:nth-child(4){
    margin-top:7px;
    padding:10px;
    background:#f7fafb;
    border:1px solid #e8eef3;
    border-radius:10px;
  }

  tbody tr td:nth-child(3):before,
  tbody tr td:nth-child(4):before{
    display:block;
    margin-bottom:4px;
    color:#657588;
    font-size:9px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
  }

  tbody tr td:nth-child(3):before{content:"Pickup";}
  tbody tr td:nth-child(4):before{content:"Return";}

  tbody tr td:nth-child(3) b,
  tbody tr td:nth-child(4) b{
    font-size:12px;
  }

  tbody tr td:nth-child(5){
    margin-top:8px;
    padding:9px 10px;
    border-radius:9px;
    background:#edf5f3;
    color:#244c51;
    font-size:12px;
  }

  .schedule-form{
    min-width:0;
    width:100%;
    margin-top:8px;
    padding:10px;
    background:#f6f9fa;
    border:1px solid #e4ebef;
    border-radius:10px;
  }

  .schedule-fields{
    gap:7px;
  }

  .schedule-fields label{
    font-size:8px;
  }

  .schedule-fields input{
    height:37px;
    padding:7px 8px;
    font-size:10px;
    border-radius:8px;
  }

  .schedule-save{
    width:100%;
    height:37px;
    margin-top:7px;
    border-radius:8px;
    font-size:10px;
  }

  .payment-form{
    min-width:0;
    width:100%;
    margin-top:10px;
    padding-top:10px;
    border-top:1px solid #edf1f4;
  }

  .toggle{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:5px;
  }

  .toggle button{
    min-height:37px;
    padding:7px;
    border-radius:8px;
    font-size:10px;
  }

  .pay-extra{
    grid-template-columns:1fr 1fr;
    gap:6px;
  }

  .pay-extra input,
  .pay-extra select{
    min-height:37px;
    font-size:10px;
  }

  .pay-extra .save{
    grid-column:1/-1;
    min-height:37px;
  }
}

/* ---------- Tablet ---------- */

@media (min-width:761px) and (max-width:1100px){

  .admin-page:has(.sidebar) .dashboard,
  .admin-page:has(.admin-sidebar) .dashboard{
    padding:25px 20px 55px;
  }

  .table-wrap{
    overflow:visible;
    padding:0 10px 16px;
  }

  table{
    display:block;
    min-width:0 !important;
  }

  thead{display:none}

  tbody{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }

  tbody tr{
    display:block;
    margin:0;
    padding:15px;
    border:1px solid #e0e8ef;
    border-radius:15px;
    background:#fff;
    box-shadow:0 7px 20px rgba(15,50,65,.06);
  }

  tbody tr td{
    display:block;
    width:100%;
    padding:0;
    border:0;
  }

  tbody tr td:nth-child(1){
    padding-bottom:10px;
    margin-bottom:10px;
    border-bottom:1px solid #edf1f5;
  }

  tbody tr td:nth-child(3),
  tbody tr td:nth-child(4){
    margin-top:7px;
    padding:10px;
    background:#f7fafb;
    border:1px solid #e8eef3;
    border-radius:10px;
  }

  tbody tr td:nth-child(3):before,
  tbody tr td:nth-child(4):before{
    display:block;
    margin-bottom:4px;
    color:#657588;
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
  }

  tbody tr td:nth-child(3):before{content:"Pickup"}
  tbody tr td:nth-child(4):before{content:"Return"}
}

/* ---------- Mobile ---------- */

@media (max-width:760px){

  .sidebar,
  .admin-sidebar{
    position:relative;
    width:100%;
    min-height:auto;
    height:auto;
  }

  .admin-page:has(.sidebar) .topbar,
  .admin-page:has(.admin-sidebar) .topbar,
  .admin-page:has(.sidebar) .dashboard,
  .admin-page:has(.admin-sidebar) .dashboard{
    margin-left:0;
    width:100%;
  }

  .topbar{
    height:64px;
    padding:0 12px;
  }

  .dashboard{
    padding:20px 10px 55px;
  }

  .dashboard h1{
    font-size:29px;
  }

  .stats{
    grid-template-columns:repeat(3,1fr);
    gap:7px;
  }

  .stat-card{
    min-height:92px;
    padding:13px 10px;
  }

  .stat-card b{
    font-size:19px;
  }

  .table-card{
    border-radius:15px;
  }

  .table-head{
    padding:15px;
  }

  .table-head input{
    max-width:none;
    width:100%;
  }

  .table-wrap{
    overflow:visible;
  }

  table{
    display:block;
    min-width:0 !important;
  }

  thead{display:none}

  tbody{
    display:grid;
    grid-template-columns:1fr;
    gap:11px;
    padding:7px;
  }

  tbody tr{
    display:block;
    width:100%;
    margin:0;
    padding:14px;
    border:1px solid #dfe8ee;
    border-radius:15px;
    background:#fff;
    box-shadow:0 6px 18px rgba(15,50,65,.065);
  }

  tbody tr td{
    display:block;
    width:100%;
    padding:0;
    border:0;
    font-size:14px;
  }

  tbody tr td:nth-child(1){
    padding-bottom:10px;
    margin-bottom:10px;
    border-bottom:1px solid #edf1f5;
  }

  tbody tr td:nth-child(1) b{
    font-size:16px;
  }

  tbody tr td:nth-child(3),
  tbody tr td:nth-child(4){
    margin-top:7px;
    padding:10px;
    background:#f7fafb;
    border:1px solid #e8eef3;
    border-radius:10px;
  }

  tbody tr td:nth-child(3):before,
  tbody tr td:nth-child(4):before{
    display:block;
    margin-bottom:4px;
    color:#657588;
    font-size:9px;
    font-weight:800;
    text-transform:uppercase;
  }

  tbody tr td:nth-child(3):before{content:"Pickup"}
  tbody tr td:nth-child(4):before{content:"Return"}

  .schedule-form{
    min-width:0;
    width:100%;
  }

  .payment-form{
    min-width:0;
    width:100%;
  }
}

/* =========================================================
   IMPORTANT: if the sidebar markup uses these common names,
   no additional HTML changes are required.
   ========================================================= */

/* =========================================================
   RYDO — REFERENCE DASHBOARD UI
   Exact structural recreation of the supplied dashboard image.
   ========================================================= */

:root{
  --rydo-navy:#10233e;
  --rydo-muted:#728197;
  --rydo-sidebar:#082d33;
  --rydo-sidebar-2:#0c3a3e;
  --rydo-green:#b8ef76;
  --rydo-border:#dfe8f0;
  --rydo-bg:#f3f7fb;
  --rydo-dark:#103b3f;
}

.rydo-sidebar{
  position:fixed;left:0;top:0;bottom:0;width:212px;
  z-index:1000;padding:17px 12px 20px;
  background:
    radial-gradient(ellipse at 45% 75%,rgba(47,105,85,.22),transparent 30%),
    linear-gradient(180deg,#0a3035 0%,#06252d 100%);
  color:#fff;display:flex;flex-direction:column;
  box-shadow:8px 0 30px rgba(5,30,39,.07);
}
.rydo-brand{display:flex;align-items:center;gap:11px;padding:0 6px 25px}
.rydo-brand-mark{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;
  color:var(--rydo-green);background:#123e43;border:1px solid rgba(184,239,118,.2);
  font-weight:800;font-size:17px;box-shadow:0 7px 18px rgba(0,0,0,.12)}
.rydo-brand .eyebrow{color:#a9c8ac;font-size:10px}
.rydo-brand strong{display:block;color:#fff;font-size:12px;margin-top:2px}
.rydo-nav{display:flex;flex-direction:column;gap:6px}
.rydo-nav a{display:flex;align-items:center;gap:12px;min-height:49px;padding:0 13px;border-radius:11px;color:#c4d1d3;font-size:13px;font-weight:700}
.rydo-nav a:hover{background:rgba(255,255,255,.06);color:#fff}
.rydo-nav a.active{background:linear-gradient(135deg,#1b635d,#174c4e);color:#fff;box-shadow:inset 0 0 0 1px rgba(184,239,118,.13)}
.nav-icon{width:22px;height:22px;display:grid;place-items:center}
.nav-icon svg,.rydo-top-actions svg,.stat-icon svg,.entries-icon svg,.car-pill svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.rydo-sidebar-bottom{margin-top:auto;padding:0 13px 4px;color:#829da1;font-size:11px;line-height:1.55}
.rydo-sidebar-bottom .sidebar-mini-title{color:#b5c8a8;font:10px 'DM Mono',monospace;letter-spacing:.18em;font-weight:700}
.rydo-sidebar-bottom strong{display:block;color:#c6d4d5;font-size:11px;margin:3px 0 10px}
.rydo-sidebar-bottom p{margin:0;max-width:150px}

.rydo-main{margin-left:212px;min-height:100vh;background:
  radial-gradient(circle at 75% 3%,rgba(123,158,255,.09),transparent 25%),
  linear-gradient(135deg,#f7faff 0%,#f2f7fb 100%)}
.rydo-topbar{height:82px;padding:0 29px;display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid rgba(218,228,237,.8);background:rgba(255,255,255,.56);backdrop-filter:blur(12px)}
.rydo-top-actions{display:flex;gap:10px;margin-left:auto}
.top-action{display:flex;align-items:center;gap:9px;height:40px;padding:0 16px;border-radius:11px;
  background:rgba(255,255,255,.95);border:1px solid #e1e9f0;color:#182a41;font-size:12px;font-weight:800;
  box-shadow:0 6px 16px rgba(20,49,73,.05)}
.top-action:hover{background:#fff;transform:translateY(-1px)}
.top-action svg{width:17px;height:17px}

.rydo-dashboard{padding:28px 27px 60px}
.rydo-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:25px}
.rydo-hero .eyebrow{color:#73839a;font-size:11px;letter-spacing:.14em}
.rydo-hero h1{margin:4px 0 4px;color:#10213a;font-size:40px;line-height:1;letter-spacing:-.065em}
.rydo-hero p{margin:0;color:#728197;font-size:14px}
.new-entry{display:flex;align-items:center;gap:7px;background:linear-gradient(135deg,#123e41,#092f32);color:#fff;
  padding:12px 18px;border-radius:11px;font-weight:800;box-shadow:0 10px 22px rgba(8,45,48,.16)}
.new-entry span{font-size:12px}

.rydo-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:22px}
.rydo-stat{position:relative;overflow:hidden;min-height:120px;border-radius:15px;border:1px solid;
  display:flex;align-items:center;gap:25px;padding:22px 25px}
.rydo-stat:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-72px;bottom:-92px;
  background:currentColor;opacity:.045}
.rydo-stat .stat-icon{width:75px;height:75px;flex:0 0 75px;border-radius:22px;display:grid;place-items:center}
.rydo-stat .stat-icon svg{width:34px;height:34px;stroke-width:1.8}
.rydo-stat span{display:block;text-transform:uppercase;font-size:11px;letter-spacing:.02em;font-weight:800}
.rydo-stat b{display:block;font-size:30px;line-height:1.05;letter-spacing:-.055em;margin:8px 0 3px}
.rydo-stat small{font-size:11px}
.rydo-stat.stat-blue{color:#285dd3;background:linear-gradient(135deg,#f5f8ff,#e9f0ff);border-color:#cadcff}
.rydo-stat.stat-blue .stat-icon{background:#cbdcff}
.rydo-stat.stat-green{color:#13724a;background:linear-gradient(135deg,#f5fffa,#e9faef);border-color:#c8edda}
.rydo-stat.stat-green .stat-icon{background:#b4f2c9}
.rydo-stat.stat-orange{color:#ad5d0e;background:linear-gradient(135deg,#fffaf4,#fff0df);border-color:#f1d5b3}
.rydo-stat.stat-orange .stat-icon{background:#ffd18d}

.rydo-entries{background:rgba(255,255,255,.95);border:1px solid #e1e9f0;border-radius:16px;
  box-shadow:0 9px 30px rgba(20,49,73,.055);padding:0 15px 16px}
.rydo-entries-head{min-height:96px;padding:18px 0 15px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.entries-title{display:flex;align-items:center;gap:13px}
.entries-icon{width:40px;height:40px;border-radius:12px;background:#f1f6fa;color:#19324d;display:grid;place-items:center}
.entries-icon svg{width:22px;height:22px}
.entries-title .eyebrow{font-size:10px;color:#7b8999}
.entries-title h2{margin:2px 0 1px;font-size:20px;letter-spacing:-.04em;color:#17263c}
.entries-title p{margin:0;color:#7b8999;font-size:11px}
.search-wrap{position:relative;width:260px}
.search-wrap svg{position:absolute;left:14px;top:13px;width:18px;height:18px;fill:none;stroke:#17324c;stroke-width:1.8;stroke-linecap:round}
.search-wrap input{margin:0;height:42px;padding:0 12px 0 39px;border:1px solid #dce5ed;border-radius:11px;background:#fbfdff;font-size:12px;box-shadow:0 4px 10px rgba(20,49,73,.025)}

.rydo-entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rydo-entry-card{position:relative;min-width:0;padding:17px;border:1px solid #e0e8ef;border-radius:14px;background:linear-gradient(145deg,#fff 0%,#fbfdff 100%);
  box-shadow:0 5px 16px rgba(15,50,65,.045);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.rydo-entry-card:hover{transform:translateY(-3px);border-color:#d1dde6;box-shadow:0 12px 28px rgba(15,50,65,.09)}
.entry-top{display:flex;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid #edf1f5}
.entry-top b{display:block;color:#14243a;font-size:16px;letter-spacing:-.02em}
.entry-top small{display:block;color:#8290a0;font-size:10px;margin-top:4px}
.entry-more{color:#092e49;font-weight:900;letter-spacing:2px;font-size:12px;padding-top:1px}
.renter-block{padding:12px 0 7px}
.renter-block>strong{display:block;font-size:15px;color:#16263b;margin-bottom:6px}
.car-pill{display:inline-flex!important;align-items:center;gap:7px;padding:6px 10px;border-radius:8px;background:#edf5f4;color:#234d53!important;font-size:11px!important;font-weight:800}
.car-pill svg{width:17px;height:17px}

.rydo-schedule-form{margin:5px 0 0;padding:10px;border:1px solid #e5ecef;border-radius:11px;background:#f7fafb}
.rydo-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.rydo-date-grid label{margin:0;color:#647486;font-size:9px;text-transform:uppercase;letter-spacing:.09em;font-weight:800}
.rydo-date-grid input{margin-top:5px;height:39px;padding:0 8px;border:1px solid #d9e2e9;border-radius:9px;background:#fff;font-size:10px;color:#26384d}
.rydo-dark-btn{width:100%;height:38px;margin-top:8px;border:0;border-radius:8px;background:#103c40;color:#fff;font-size:11px;font-weight:800;cursor:pointer;box-shadow:0 5px 10px rgba(8,47,50,.08)}
.rydo-dark-btn:hover{background:#174b4e}

.rydo-info-box{margin-top:9px;padding:10px 11px;border:1px solid #e7edf1;border-radius:10px;background:#f8fafb}
.rydo-info-box span{display:block;color:#627386;font-size:9px;font-weight:800;letter-spacing:.08em}
.rydo-info-box strong{display:block;color:#15263b;font-size:15px;margin-top:4px}
.rydo-coordinator{margin-top:8px;padding:9px 11px;border-radius:9px;background:#edf5f3;color:#294d52;font-size:11px;font-weight:700}

.rydo-payment-form{margin-top:10px;padding-top:10px;border-top:1px solid #edf1f4}
.rydo-toggle{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.rydo-toggle button{height:37px;border:0;border-radius:8px;background:#eef3f2;color:#63747d;font-size:11px;font-weight:800;cursor:pointer}
.rydo-toggle button.active{background:#cfff8e;color:#23661b}
.rydo-toggle button.active.no{background:#ffd9d5;color:#bd241c}
.rydo-pay-extra{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:7px}
.rydo-pay-extra input,.rydo-pay-extra select{margin:0;width:100%;height:37px;padding:0 8px;border:1px solid #dbe4eb;border-radius:8px;background:#fff;font-size:10px}
.rydo-pay-extra .rydo-dark-btn{grid-column:1/-1;margin-top:0;height:37px}
.rydo-empty{grid-column:1/-1;padding:55px;text-align:center;color:#718197}

@media(max-width:1100px) and (min-width:761px){
  .rydo-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rydo-stat{gap:15px;padding:20px}
  .rydo-stat .stat-icon{width:62px;height:62px;flex-basis:62px;border-radius:18px}
  .rydo-stat b{font-size:26px}
}
@media(max-width:760px){
  .rydo-sidebar{position:relative;width:100%;height:auto;min-height:0;padding:13px}
  .rydo-brand{padding-bottom:14px}
  .rydo-nav{display:grid;grid-template-columns:repeat(3,1fr)}
  .rydo-nav a{justify-content:center;min-height:42px;padding:0 6px;font-size:11px}
  .rydo-nav a .nav-icon{display:none}
  .rydo-sidebar-bottom{display:none}
  .rydo-main{margin-left:0}
  .rydo-topbar{height:60px;padding:0 10px}
  .rydo-top-actions{width:100%;gap:5px}
  .top-action{flex:1;justify-content:center;padding:0 7px;font-size:10px}
  .top-action svg{width:15px;height:15px}
  .rydo-dashboard{padding:20px 10px 50px}
  .rydo-hero{align-items:flex-start;margin-bottom:18px}
  .rydo-hero h1{font-size:30px}
  .rydo-hero p{font-size:11px;line-height:1.45}
  .new-entry{height:40px;padding:0 11px;font-size:11px}
  .rydo-stats{gap:7px}
  .rydo-stat{min-height:90px;gap:9px;padding:12px 9px;border-radius:12px}
  .rydo-stat .stat-icon{display:none}
  .rydo-stat span{font-size:8px;line-height:1.25}
  .rydo-stat b{font-size:18px;margin:6px 0 2px}
  .rydo-stat small{font-size:8px}
  .rydo-entries{padding:0 7px 9px;border-radius:14px}
  .rydo-entries-head{display:block;padding:14px 7px 10px}
  .entries-title{align-items:flex-start}
  .entries-icon{width:36px;height:36px}
  .entries-title h2{font-size:18px}
  .entries-title p{font-size:10px}
  .search-wrap{width:100%;margin-top:11px}
  .rydo-entry-grid{grid-template-columns:1fr;gap:10px}
  .rydo-entry-card{padding:14px;border-radius:14px}
  .entry-top b{font-size:15px}
  .renter-block>strong{font-size:15px}
  .rydo-date-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:430px){
  .rydo-date-grid{grid-template-columns:1fr}
  .rydo-top-actions .top-action:nth-child(2){display:none}
  .rydo-hero h1{font-size:27px}
  .rydo-stat b{font-size:16px}
}
