.ra-shell{display:grid;gap:10px;min-width:0}
.ra-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:8px 12px}
.ra-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:0;max-width:72ch}
.ra-summary strong{font-size:16px}
.ra-summary span{color:#8a2f26;font-weight:700;overflow-wrap:anywhere}
.ra-shell button{min-height:38px;border:1px solid var(--line);border-radius:9px;padding:6px 12px;background:var(--card);color:inherit;cursor:pointer}
.ra-shell button.primary{border:0;background:var(--accent);color:#fff}
.ra-shell button:disabled{cursor:not-allowed;opacity:.55}
.ra-notice{margin:0;padding:8px 10px;border-left:4px solid var(--accent2);border-radius:8px;background:#efe5d7;color:#5f5042;font-size:13px}
.ra-notice:empty{display:none;margin:0;padding:0}
.ra-pending{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:8px 10px;border-radius:8px;background:#f7d8d3;color:#8a2f26;font-size:13px}
.ra-empty{margin:0;padding:10px 12px;border:1px dashed var(--line);border-radius:10px;color:var(--muted)}
.ra-mark,.ra-expired{min-width:0}
.ra-mark[open]{flex:1 0 100%}
.ra-mark>summary,.ra-expired>summary{display:inline-flex;align-items:center;min-height:38px;padding:6px 12px;border:1px solid var(--line);border-radius:9px;background:var(--card);font-weight:700;cursor:pointer}
.ra-mark-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 10px;margin-top:8px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.ra-mark-form label{display:grid;gap:3px;font-size:13px;font-weight:700;color:#4f463e}
.ra-mark-form select,.ra-mark-form input{min-height:38px;padding:6px 9px;border:1px solid var(--line);border-radius:9px;background:#fff;font:inherit}
.ra-mark-form select{width:auto;max-width:220px}
.ra-mark-form input[name=hours]{width:88px}
.ra-note-field{flex:1 1 220px;max-width:320px}
.ra-note-field input{width:100%}
.ra-total{color:var(--muted);font-weight:700}
.ra-summary .ra-total{color:var(--muted)}
.ra-info{min-width:0}
.ra-info>summary{display:inline-flex;align-items:center;min-height:38px;padding:6px 10px;border-radius:9px;color:var(--muted);font-size:13px;cursor:pointer}
.ra-info[open]{flex:1 0 100%}
.ra-info p{margin:4px 0 0;max-width:72ch;color:var(--muted);font-size:13px}
.ra-overview{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(390px,100%),1fr));align-items:start;gap:10px}
.ra-group{min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.ra-group-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:4px 10px}
.ra-group-head h3{margin:0;font-size:17px}
.ra-group-hint,.ra-group-count,.ra-policy-note{color:var(--muted);font-size:13px}
.ra-group-head code{font-size:12px;color:var(--muted)}
.ra-group--other>summary{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 10px;min-height:38px;cursor:pointer}
.ra-wide{display:grid;gap:4px;margin:8px 0 0;padding:8px 10px;border-radius:10px;background:#f7d8d3;color:#8a2f26;font-size:13px;font-weight:700}
.ra-rows{display:grid;gap:0;margin:6px 0 0;padding:0;list-style:none}
.ra-row{display:grid;grid-template-columns:minmax(5.5rem,7.5rem) minmax(9.5rem,17rem) minmax(6.5rem,8.5rem);justify-content:start;align-items:start;gap:4px 10px;padding:7px 0;border-top:1px solid var(--line)}
.ra-row:first-child{border-top:0}
.ra-row-name{font-weight:800;overflow-wrap:anywhere}
.ra-row-status{display:grid;gap:4px;min-width:0}
.ra-entry{display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;min-width:0}
.ra-entry .ra-meta,.ra-entry .ra-note{flex-basis:100%}
.ra-entry .ra-clear{min-height:32px;margin:0;padding:3px 10px}
.ra-entry .ra-until time,.ra-entry .ra-until>span{white-space:nowrap}
.ra-badge--ok{background:#dcefdc;color:#24622f}
.ra-badge--policy{background:#e9e1f2;color:#4d3a6b}
.ra-row-name .ra-badge--runtime{display:inline-block;margin:2px 0 0;font-weight:700;white-space:nowrap}
.ra-badge--runtime{background:#dbe8f5;color:#24476b}
.ra-badge--runtime.ra-badge--stale{background:#eee;color:#777;text-decoration:line-through}
.ra-quota{display:flex;flex-wrap:wrap;gap:2px 6px;color:var(--muted);font-size:12px}
.ra-quota-label{font-weight:700}
.ra-quota-value{font-weight:700;color:#4f463e}
.ra-quota-reset,.ra-quota-shared{flex-basis:100%;min-width:0;overflow-wrap:anywhere}
.ra-quota-stale{padding:0 6px;border-radius:999px;background:#f7d8d3;color:#8a2f26;font-weight:700}
.ra-quota-source{color:#8a2f26}
.ra-row--blocked .ra-row-name{color:#8a2f26}
.ra-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));align-items:start;gap:10px}
.ra-expired .ra-grid{margin-top:8px}
.ra-card{display:grid;gap:4px;min-width:0;padding:12px 14px;border:1px solid var(--line);border-left:5px solid #b4533f;border-radius:14px;background:var(--card)}
.ra-card--expired{border-left-color:var(--line);color:var(--muted)}
.ra-card p{margin:0;overflow-wrap:anywhere}
.ra-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.ra-card-head strong{font-size:16px}
.ra-badge{padding:2px 8px;border-radius:999px;background:#eee5d9;color:#654f3b;font-size:12px;font-weight:700}
.ra-badge--quota_exhausted,.ra-badge--unavailable{background:#f7d8d3;color:#8a2f26}
.ra-family{color:#8a2f26;font-size:13px}
.ra-until time{font-weight:800}
.ra-until span{margin-left:4px;color:var(--muted);font-size:13px}
.ra-meta{display:flex;flex-wrap:wrap;gap:4px 12px;color:var(--muted);font-size:13px}
.ra-note{color:#4f463e;font-size:13px;white-space:pre-wrap}
.ra-clear{justify-self:start;margin-top:4px}
@media(max-width:720px){
  .ra-shell button,.ra-mark>summary,.ra-expired>summary{min-height:44px}
  .ra-mark-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .ra-mark-form label{min-width:0}
  .ra-mark-form select,.ra-mark-form input,.ra-mark-form input[name=hours]{width:100%;max-width:none;min-height:44px}
  .ra-note-field{grid-column:1/-1;max-width:none}
  .ra-mark-form button{grid-column:1/-1}
  .ra-info>summary,.ra-group--other>summary{min-height:44px}
  .ra-row{grid-template-columns:minmax(0,6.5rem) minmax(0,1fr)}
  .ra-quota{grid-column:2}
  .ra-entry .ra-clear{min-height:44px}
}

.ra-quota--accounts{min-width:0;overflow-wrap:anywhere}
.ra-quota-account{display:block;flex-basis:100%;min-width:0;max-width:100%;overflow-wrap:anywhere}
