/* Staff redesign (Nov 2026): tools screen. Spec: docs/STAFF_REDESIGN_PROTOTYPE_2026-11-04 */
.tools-screen{font-family:var(--font);color:var(--ink)}
.tools-screen .rt-top{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.tools-screen .rt-top h1{margin:0;font-family:var(--font-title);font-weight:400;font-size:34px;letter-spacing:-.6px}
.tools-screen .rt-top .rt-desktop{margin-left:auto}
.tools-screen .rt-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px;align-items:start;padding-bottom:24px}
.tools-screen .rt-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px;display:flex;flex-direction:column;gap:12px}
.tools-screen .rt-card h2{margin:0;font-family:var(--font-title);font-weight:400;font-size:22px;letter-spacing:0;line-height:1.2}
.tools-screen .rt-side{display:flex;flex-direction:column;gap:20px;min-width:0}
.tools-screen .rt-data{grid-column:1 / -1;flex-direction:row;align-items:center;flex-wrap:wrap;gap:16px}
.tools-screen .rt-data h2{flex:none}
.tools-screen .form-error{margin:0;font-size:15px}
.tools-screen .form-error:empty{display:none}
.tools-screen .rt-note{margin:0;font-size:15px;color:var(--ink)}
.tools-screen .rt-note:empty{display:none}

/* Buttons */
.tools-screen .rt-btn{min-height:42px;margin:0;padding:0 16px;border:1px solid var(--green);border-radius:10px;background:#fff;color:var(--green);font:600 15px var(--font);display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;text-decoration:none;white-space:nowrap}
.tools-screen .rt-btn:hover:not(:disabled){background:var(--soft)}
.tools-screen .rt-btn.rt-pri{background:var(--green);color:#fff}
.tools-screen .rt-btn.rt-pri:hover:not(:disabled){background:var(--green-pressed)}
.tools-screen .rt-icon{width:38px;height:38px;min-height:38px;flex:none;margin:0;border:1px solid #c9d2ca;border-radius:6px;background:#fff;color:var(--green);display:inline-grid;place-items:center;padding:0;cursor:pointer}
.tools-screen .rt-icon:hover:not(:disabled){background:var(--soft)}
.tools-screen .rt-link{border:0;background:none;margin:0;padding:0;min-height:32px;color:var(--green);font:600 15px var(--font);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.tools-screen .rt-link.rt-danger{color:var(--error)}
.tools-screen .rt-link[hidden]{display:none}

/* Fields */
.tools-screen .rt-field{display:block;border:1px solid var(--line);border-radius:10px;padding:6px 10px 5px;background:#fff;margin:0;min-width:0}
.tools-screen .rt-field>span{display:block;font-size:13px;font-weight:700;color:var(--ink);line-height:1.3}
.tools-screen .rt-field input,.tools-screen .rt-field select{display:block;width:100%;box-sizing:border-box;border:0;padding:2px 0 1px;margin:0;min-height:0;font:16px var(--font);color:var(--ink);background:transparent;outline:none}
.tools-screen .rt-field:focus-within{border-color:var(--green);box-shadow:0 0 0 2px var(--soft)}

/* Availability Summary */
.tools-screen .rt-av-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.tools-screen .rt-av-range{display:flex;align-items:center;gap:6px;flex:1 1 240px;min-width:0}
.tools-screen .rt-av-label{flex:1;text-align:center;font-size:17px;font-weight:600;white-space:nowrap}
.tools-screen .rt-av-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:15px;color:var(--ink);min-height:32px}
.tools-screen .rt-av-meta>span{margin-right:auto}
.tools-screen .rt-av-list{display:flex;flex-direction:column;gap:1px;background:var(--fill);border:1px solid var(--divider);border-radius:10px;overflow:hidden;transition:opacity .15s}
.tools-screen .rt-av-list:empty{display:none}
.tools-screen .rt-av-list.rt-stale{opacity:.45}
.tools-screen .rt-av-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:start;padding:9px 14px;background:#fff;font-size:15px;line-height:1.35}
.tools-screen .rt-av-row.rt-free{background:#f3f8f1}
.tools-screen .rt-av-date{display:flex;flex-direction:column;line-height:1.2}
.tools-screen .rt-av-wd{font-size:13px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--ink)}
.tools-screen .rt-av-md{font-size:15px;font-weight:600}
.tools-screen .rt-av-rides{display:flex;flex-direction:column;gap:4px;min-width:0}
.tools-screen .rt-av-free{display:inline-flex;align-items:center;gap:6px;color:var(--green);font-weight:400}
.tools-screen .rt-av-free svg{width:16px;height:16px}
.tools-screen .rt-ride{display:flex;gap:10px;min-width:0}
.tools-screen .rt-ride-time{flex:0 0 4.7em;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.tools-screen .rt-ride-route{color:var(--ink);min-width:0;overflow-wrap:anywhere}

/* Print Worksheets */
.tools-screen .rt-cal-form{border-bottom:0;padding-bottom:0}
.tools-screen #daily-print,.tools-screen #monthly-print{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0;padding-bottom:0;border-bottom:0}
.tools-screen #monthly-print button{margin-top:0}
.tools-screen #monthly-print{padding-top:12px;border-top:1px solid var(--fill)}
.tools-screen .rt-print-label{font-size:17px;font-weight:600;width:170px}
.tools-screen .rt-open{margin-left:auto}
.tools-screen .rt-seg{display:flex;padding:3px;border-radius:9px;background:var(--fill);border:0}
.tools-screen .rt-seg button{border:0;border-radius:7px;background:transparent;min-height:30px;margin:0;padding:0 14px;font:15px var(--font);color:var(--ink);text-decoration:none;cursor:pointer}
.tools-screen .rt-seg button[aria-pressed="true"]{background:#fff;color:var(--ink);font-weight:600;box-shadow:0 1px 2px rgba(26,31,29,.14)}
.tools-screen .rt-month{width:190px}

/* iPhone Calendar */
.tools-screen .rt-links:empty{display:none}
.tools-screen .rt-link-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--fill)}
.tools-screen .rt-link-name{flex:1;min-width:0;overflow-wrap:anywhere}
.tools-screen .rt-link-name b{display:block;font-size:17px;font-weight:600}
.tools-screen .rt-link-name span{font-size:13px;color:var(--ink)}
.tools-screen .rt-cal-form{display:flex;gap:10px;align-items:flex-end;padding-top:12px;border-top:1px solid var(--fill);flex-wrap:wrap;margin:0}
.tools-screen .rt-cal-form[hidden]{display:none}
.tools-screen .rt-cal-form .rt-field{flex:1;min-width:180px}
.tools-screen .rt-new-link{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.tools-screen .rt-new-link:empty{display:none}
.tools-screen .rt-new-link .rt-field{align-self:stretch}
.tools-screen .rt-download{align-self:flex-start}

/* Data */
.tools-screen .rt-usage{flex:1;min-width:240px}
.tools-screen .rt-meter{height:8px;border-radius:4px;background:var(--divider);overflow:hidden}
.tools-screen .rt-meter-fill{width:0;height:100%;background:var(--green);border-radius:4px}
.tools-screen .rt-usage-text{margin-top:6px;font-size:15px;color:var(--ink);min-height:21px}
.tools-screen .rt-data .form-error{flex-basis:100%}

/* Operational Errors section (mounted by Settings) */
.op-errors{display:flex;flex-direction:column;gap:10px;min-width:0}
.op-errors h2{margin:0}
.op-errors-actions{display:flex;flex-wrap:wrap;gap:10px}
.op-errors-actions button{margin:0}
.op-errors #errors-status{margin:0;font-size:15px;color:var(--ink)}
.op-errors .operational-error{border-top:1px solid var(--fill);padding:8px 0;font-size:15px;min-width:0}
.op-errors .operational-error summary{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;cursor:pointer;min-height:44px;padding:10px 0}
.op-errors .operational-error summary time{color:var(--ink);font-size:13px}
.op-errors .operational-error p{margin:6px 0;overflow-wrap:anywhere}
.op-errors .operational-error pre{margin:6px 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;color:var(--ink)}

@media (max-width:900px){.tools-screen .rt-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:600px){
  .tools-screen .rt-desktop{display:none}
  .tools-screen .rt-top h1{font-size:28px}
  .tools-screen .rt-grid,.tools-screen .rt-side{gap:14px}
  .tools-screen .rt-card{padding:16px}
  .tools-screen .rt-btn,.tools-screen .rt-icon{min-height:44px}
  .tools-screen .rt-icon{width:44px;height:44px}
  .tools-screen .rt-link{min-height:44px}
  .tools-screen .rt-av-bar{flex-wrap:nowrap;gap:8px}
  .tools-screen .rt-av-range{flex:1 1 0;gap:2px}
  .tools-screen .rt-av-label{font-size:17px}
  .tools-screen .rt-av-row{grid-template-columns:56px minmax(0,1fr);gap:10px;padding:10px 12px;font-size:15px}
  .tools-screen .rt-print-label{width:100%}
  .tools-screen .rt-seg{flex:1 1 auto;min-width:0}
  .tools-screen .rt-seg button{flex:1;min-width:0;min-height:44px;padding:0 6px}
  .tools-screen .rt-month{width:auto;flex:1;min-width:0}
  .tools-screen .rt-month>span{position:relative;z-index:1;pointer-events:none}
  .tools-screen .rt-month select{box-sizing:border-box;width:calc(100% + 20px);min-height:48px;margin:-23px -10px -5px;padding:21px 10px 4px}
  .tools-screen .rt-open{margin-left:0;flex:none}
  .tools-screen .rt-cal-form .rt-field{min-width:0;flex-basis:100%}
  .tools-screen .rt-cal-form .rt-btn{flex:1}
  .tools-screen .rt-usage{min-width:0;flex-basis:100%;order:1}
  .tools-screen .rt-data h2{order:0}
  .tools-screen .rt-data .rt-btn{order:2;flex:1}
  .tools-screen .rt-data .form-error{order:3}
  .op-errors-actions button{min-height:44px}
}
