/* Compact private athlete overview, v0.33. Scoped to this view. */
.book-page-intro{max-width:100ch}
.book-snapshot{max-width:110ch}
.portal-app .athlete-book-overview{padding:20px 0 0;box-shadow:none}
.book-list-toolbar{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:0 20px}
.book-list-search{width:min(100%,480px);min-width:0;flex:1}
.book-list-search label{margin:0}
.book-list-toolbar>button{flex-shrink:0;max-width:100%;font-size:13px}
.book-count{margin:15px 20px 12px;font-size:13px;font-weight:700;color:var(--muted)}
.athlete-book-overview>[role=alert]{margin:12px 20px}
.book-table{table-layout:fixed;width:100%;margin:0;font-size:13px}
.book-table th{padding:10px 12px;white-space:normal;overflow-wrap:normal;font-size:10px;background:#f5f5f7}
.book-table th:nth-child(1){width:18%}
.book-table th:nth-child(2){width:8%}
.book-table th:nth-child(3){width:9%}
.book-table th:nth-child(4){width:19%}
.book-table th:nth-child(5){width:6%}
.book-table th:nth-child(6){width:12%}
.book-table th:nth-child(7){width:28%}
.book-table td{padding:11px 12px;vertical-align:middle;border-bottom:0;overflow-wrap:anywhere}
.book-table .book-cell-name{padding-left:20px}
.book-cell-name strong{font-size:14px}
.book-table th:first-child{padding-left:20px}
.book-table .book-cell-actions{padding-right:20px}
.book-stripe{background:#f6f6f8}
.book-athlete-group:last-child .book-item>td:first-child{border-bottom-left-radius:14px}
.book-athlete-group:last-child .book-item>td:last-child{border-bottom-right-radius:14px}
.book-cell-label{display:none}
.book-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.book-row-actions>button,.book-action-menu>summary{padding:8px 10px;font-size:12px;font-weight:600}
.book-action-menu{position:relative;max-width:100%}
.book-action-menu>summary{display:block;list-style:none;color:var(--muted);cursor:pointer;border:1px solid transparent;border-radius:6px}
.book-action-menu>summary::-webkit-details-marker{display:none}
.book-action-menu>summary::after{content:'⌄';margin-left:6px}
.book-action-menu[open]>summary{border-color:var(--line);background:white;color:var(--ink)}
.book-action-panel{position:absolute;right:0;top:calc(100% + 5px);z-index:3;min-width:170px;max-width:250px;background:white;padding:5px;border:1px solid var(--line);border-radius:8px;box-shadow:0 6px 20px #20222b1a}
.book-action-panel>button{width:100%;text-align:left;font-size:13px}
.book-mark-toggle{display:inline-flex;align-items:center;gap:7px;background:transparent;color:var(--red);padding:8px 0;font-size:13px;font-weight:600;text-align:left;overflow-wrap:normal}
.book-mark-toggle span{display:inline-block}
.book-mark-toggle[aria-expanded=true] span{transform:rotate(180deg)}
.book-no-marks{color:var(--muted);font-size:12px}
.book-marks-row[hidden]{display:none}
.book-table .book-marks-row>td{padding:0 20px 15px}
.book-mark-panel{padding:15px 18px;background:white;border:1px solid var(--line);border-left:3px solid var(--red);border-radius:6px}
.book-mark-panel h3{margin:0 0 10px;font-size:13px}
.book-mark-list{list-style:none;margin:0;padding:0}
.book-mark-list li{display:grid;grid-template-columns:minmax(0,1fr) 100px minmax(0,1fr);gap:16px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}
.book-mark-list li:first-child{border-top:0}
.book-mark-meta,.book-mark-place time{display:block;margin-top:2px;font-size:12px;color:var(--muted)}
.book-mark-value{font-variant-numeric:tabular-nums;font-size:15px}
.book-empty{margin:0;padding:18px 20px 28px;color:var(--muted)}
@media(max-width:1100px){
 .book-table th:nth-child(1){width:17%}
 .book-table th:nth-child(2){width:9%}
 .book-table th:nth-child(3){width:10%}
 .book-table th:nth-child(4){width:15%}
 .book-table th:nth-child(6){width:15%}
 .book-table th:nth-child(7){width:28%}
 .book-table th,.book-table td{padding-left:8px;padding-right:8px}
 .book-row-actions{gap:2px}
 .book-row-actions>button,.book-action-menu>summary{padding:8px 6px}
}
@media(max-width:1000px){
 .book-list-toolbar{flex-wrap:wrap;align-items:stretch;gap:12px}
 .book-list-search{width:100%;flex-basis:100%}
 .book-list-toolbar>button{align-self:flex-start}
 .book-table,.book-table tbody{display:block}
 .book-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
 .book-table .book-item{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 16px;padding:18px 20px;border-top:1px solid var(--line)}
 .book-table .book-item>td{display:block;min-width:0;padding:0;border-radius:0}
 .book-table .book-cell-name{grid-column:1/-1;grid-row:1}
 .book-cell-name strong{font-size:16px}
 .book-table .book-cell-club{grid-column:1/-1;grid-row:2}
 .book-cell-year,.book-cell-sex,.book-cell-country{grid-row:3}
 .book-cell-year{grid-column:1}.book-cell-sex{grid-column:2}.book-cell-country{grid-column:3}
 .book-table .book-cell-marks{grid-column:1/-1;grid-row:4}
 .book-cell-label{display:block;font-size:11px;color:var(--muted);margin-bottom:2px}
 .book-cell-name .book-cell-label,.book-cell-club .book-cell-label,.book-cell-marks .book-cell-label{display:none}
 .book-table .book-cell-actions{grid-column:1/-1;grid-row:5}
 .book-row-actions{justify-content:flex-start;gap:8px}
 .book-row-actions>button,.book-action-menu>summary{min-height:40px;padding:9px 12px}
 .book-mark-toggle{min-height:36px;padding:5px 0}
 .book-action-panel{max-width:min(250px,calc(100vw - 80px))}
 .book-marks-row:not([hidden]),.book-marks-row>td{display:block}
 .book-table .book-marks-row>td{padding:0 20px 18px}
 .book-mark-panel{padding:12px}
 .book-mark-list li{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px}
 .book-mark-place{grid-column:1/-1}
 .book-mark-place time{display:inline;margin-left:10px}
}
@media(max-width:430px){
 .book-page-heading{align-items:flex-start;gap:12px}
 .book-page-heading h1{font-size:30px}
 .book-list-toolbar,.book-table .book-item{padding-left:16px;padding-right:16px}
 .book-list-toolbar>button{width:100%}
 .book-count{margin-left:16px;margin-right:16px}
 .book-table .book-marks-row>td{padding-left:16px;padding-right:16px}
 .book-row-actions{gap:4px}
 .book-row-actions>button,.book-action-menu>summary{font-size:12px;padding:9px 8px}
}
