/* Discovery uses the site's existing typeface, palette, and theme settings. */
.online-decks-view{gap:20px;min-width:0}
.online-decks-view .online-view-header{display:block;margin-bottom:28px}
.online-view-header h1{font-size:clamp(28px,2.7vw,42px);line-height:1.15;letter-spacing:-.025em;margin:0 0 8px}
.online-view-header p{font-size:15px;max-width:none;margin:0}
.online-decks-view .online-tabs{margin:0;gap:6px;border-bottom:1px solid var(--border);padding:0 0 2px}
.online-decks-view .online-tabs a{padding:11px 17px;font-size:14px}
.online-decks-view .online-live-status:not(.has-error){display:none}
.online-decks-view .online-search{padding:16px;display:grid;gap:12px;margin:0 0 24px;border-radius:13px}
.online-search .search-field{width:100%;display:flex;gap:12px;min-height:43px;margin:0;padding:0 0 0 14px;overflow:hidden}
.online-search .search-field input{flex:1;min-width:0;padding:10px 0;border:0;box-shadow:none;background:transparent}
.online-search .search-field .button{min-width:108px;align-self:stretch;border-radius:7px}
.online-decks-view .online-search-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:center}
.online-search-filters .form-field{margin:0;position:relative;gap:0;min-width:0}
.online-search-filters .form-field>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.online-search-filters .form-field>svg{position:absolute;left:12px;top:12px;pointer-events:none;z-index:1}
.online-search-filters select,.online-search-filters input[name=university]{width:100%;height:42px;min-height:42px;border-radius:8px;font-size:13px;padding:8px 26px 8px 38px;background-color:var(--panel);box-shadow:none;text-overflow:ellipsis}
.online-search-filters input[name=university]{padding-left:12px}
.online-search-filters .university-picker{min-width:0}
.online-search-filters .university-picker-status:empty{display:none}
.online-decks-view .online-deck-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.catalog-card.online-deck-card{padding:0;overflow:hidden;border-radius:12px;display:flex;flex-direction:column;min-width:0;gap:0;box-shadow:0 3px 10px #162f2520}
.catalog-cover{position:relative;aspect-ratio:3;flex:none;overflow:hidden;background:#dde4dd}
.catalog-cover>img{display:block;width:100%;height:100%;object-fit:cover}
.catalog-kind{position:absolute;top:10px;right:10px;border-radius:24px;background:#f7faf3f5;color:#315c4c;border:1px solid #becdc3;display:flex;align-items:center;gap:5px;font-size:10px;font-weight:800;text-transform:uppercase;padding:5px 9px;max-width:90%}
.catalog-card-body{display:flex;flex-direction:column;gap:10px;padding:14px 15px 15px;flex:1;min-width:0}
.catalog-card h3{font-size:15px;line-height:1.35;margin:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere;min-height:2.7em}
.catalog-chips{display:flex;gap:6px;min-height:23px;overflow:hidden}
.catalog-chips span{font-size:11px;line-height:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:20px;background:#dfeae2;color:#315448;padding:2px 9px;max-width:70%}
.catalog-chips:empty{display:none}
.catalog-summary{font-size:13px;line-height:1.5;margin:0;min-height:3em;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.catalog-author{display:flex;align-items:center;gap:6px;font-size:11px;line-height:1.4;min-width:0;margin-top:auto;color:var(--muted)}
.catalog-author span,.catalog-author small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.catalog-author small{font-size:10px;margin-left:auto}
.catalog-author svg,.catalog-metrics svg{flex:none}
.catalog-metrics{display:flex;justify-content:space-between;gap:6px;font-size:10.5px;align-items:center;flex-wrap:wrap}
.catalog-metrics>span{display:flex;align-items:center;gap:4px;white-space:nowrap}
.catalog-review svg{color:#d89425;fill:#d89425}
.catalog-card .online-deck-actions{margin:0;padding:0;display:block}.catalog-card .online-deck-actions .button{width:100%;display:flex;justify-content:center;gap:9px;min-height:37px;font-size:13px;border-radius:7px}
.online-deck-grid>.empty-state,.online-deck-grid>.online-load-more{grid-column:1/-1}
.publication-cover-picker{border:1px solid var(--border);border-radius:10px;padding:16px;display:grid;gap:12px;margin:0}
.publication-cover-picker legend{font-weight:700;padding:0 6px}.publication-cover-preview{width:100%;aspect-ratio:3;object-fit:cover;height:auto;border-radius:7px}
.publication-cover-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.publication-cover-controls small{color:var(--muted);font-size:12px}
.publication-cover-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.publication-cover-choices button{padding:3px;border:2px solid transparent;border-radius:7px;background:var(--panel);min-width:0;color:inherit;cursor:pointer}.publication-cover-choices button[aria-pressed=true]{border-color:#447466;background:#e6eee8}.publication-cover-choices img{width:100%;aspect-ratio:3;object-fit:cover;border-radius:4px}.publication-cover-choices span{display:block;font-size:11px;padding:4px}.cover-error:empty{display:none}.cover-error{font-size:13px;margin:0}
@media(max-width:1150px){.online-decks-view .online-deck-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.online-decks-view .online-search-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.online-decks-view .online-deck-grid{grid-template-columns:minmax(0,1fr)}.online-decks-view .online-search-filters{gap:8px}.online-decks-view .online-tabs a{padding:10px 7px;font-size:12px}.online-tabs svg{display:none}.publication-cover-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-card h3{min-height:0}.catalog-metrics{font-size:12px}.online-search .search-field .button{min-width:70px}}

.catalog-collection-owner{display:flex;justify-content:flex-end;gap:8px;align-items:center}.catalog-collection-owner .text-button{font-size:12px}

.online-decks-view .online-search{grid-template-columns:minmax(0,1fr);border:1px solid var(--border);box-shadow:0 3px 12px #20352910;background-image:none}
.online-decks-view .online-search .search-field{width:100%;max-width:none;border:1px solid var(--border);box-shadow:none;border-radius:8px;background:var(--surface)}
.online-decks-view .catalog-card{background-image:none;border-radius:12px}.catalog-card .button,.online-search .button{box-shadow:none;border-width:1px}.online-search-filters select,.online-search-filters input[name=university]{border:1px solid var(--border);background-color:var(--surface)}
.catalog-card h3{min-height:2.7em}.online-decks-view .online-search .search-field .button{width:auto;border:0}.catalog-card-body{gap:9px}.catalog-chips{margin-top:-2px}

.online-decks-view .catalog-card.panel{background-image:none!important;box-shadow:0 3px 10px #162f2520!important;border-radius:12px!important}
.online-decks-view .online-search .form-field>input,.online-decks-view .online-search .form-field>select{box-shadow:none!important;outline:none;border:1px solid var(--border)!important}
.online-decks-view .online-search .form-field>input:focus-visible,.online-decks-view .online-search .form-field>select:focus-visible{outline:2px solid var(--primary);outline-offset:2px}


/* Catalog actions keep their readable labels on phones. */
.online-decks-view .catalog-card .button span{display:inline}

/* Leave the introduction uncluttered; sharing lives beside the catalog tabs. */
.online-decks-view .online-view-header{display:block;margin-bottom:28px}

.thumbnail-crop[hidden]{display:none}
.thumbnail-crop-canvas{display:block;width:100%;height:auto;aspect-ratio:3/1;border-radius:7px;background:var(--surface-alt);cursor:grab;touch-action:none}
.thumbnail-crop-canvas.is-dragging{cursor:grabbing}
.thumbnail-crop-canvas:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
.thumbnail-crop-help{font-size:12px;line-height:1.5;color:var(--muted);margin:9px 0}
.thumbnail-crop-controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.thumbnail-crop-controls label{display:flex;align-items:center;gap:10px;flex:1;min-width:180px;font-size:13px;font-weight:600}
.thumbnail-crop-controls input{flex:1;min-width:60px;width:auto;accent-color:var(--primary);padding:0}
.thumbnail-crop-controls output{width:3.5em;text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}

/* Existing artwork and notebook pages are loaded only while this dialog is open. */
.thumbnail-source-picker{display:grid;gap:16px;min-width:0}
.thumbnail-source-status{margin:0;color:var(--muted);line-height:1.5}
.thumbnail-source-tabs{display:flex;gap:8px;flex-wrap:wrap}
.thumbnail-source-tabs button[aria-pressed="true"]{background:var(--primary);color:var(--on-primary,#fff);border-color:var(--primary)}
.thumbnail-source-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.thumbnail-source-item{display:grid;grid-template-rows:auto 1fr;gap:9px;min-width:0;padding:8px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer}
.thumbnail-source-item:hover:not(:disabled){border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}
.thumbnail-source-item:focus-visible{outline:3px solid var(--primary);outline-offset:2px}
.thumbnail-source-item:disabled{cursor:default;opacity:.7}
.thumbnail-source-item strong{font-size:12px;line-height:1.4;overflow-wrap:anywhere}
.thumbnail-source-preview{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--border);border-radius:5px;background:var(--surface-alt);font-size:12px;color:var(--muted);text-align:center}
.thumbnail-source-preview img{display:block;width:100%;height:100%;object-fit:contain}
.thumbnail-source-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--muted)}
.thumbnail-source-picker [hidden]{display:none!important}
@media(max-width:650px){.thumbnail-source-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}

.online-decks-view .online-tabs{width:100%;box-sizing:border-box;flex-wrap:wrap;align-items:center;padding:6px;background:var(--surface);border:1px solid var(--border);border-radius:12px}
.online-decks-view .online-tabs .online-share-library{margin-left:auto;white-space:nowrap;padding:9px 16px}
@media(max-width:620px){.online-decks-view .online-tabs .online-share-library{margin-left:0;width:100%;justify-content:center}}
