/* v3.3: namespaced additions. Original theme colors inherit from existing app. */
.kh33-history-section { margin:18px 0 22px; }
.kh33-history-section .kh-section-title { margin-bottom:8px; }
.kh33-history-section .kh-section-title a { color:inherit;text-decoration:none; }
.kh33-history-empty {padding:22px 16px;text-align:center;opacity:.85;border-radius:5px;background:rgba(128,128,128,.075);font-size:14px}
.kh33-history-empty a {color:var(--accent,#69f0ae);text-decoration:underline}
.kh33-history-list {display:flex;gap:13px;overflow-x:auto;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;padding:9px 2px 14px;scrollbar-width:thin}
.kh33-history-card {flex:0 0 min(248px,76vw);min-width:0;overflow:hidden;border-radius:5px;background:rgba(128,128,128,.09);scroll-snap-align:start;position:relative}
.kh33-history-photo {display:block;position:relative;aspect-ratio:16/9;background:rgba(0,0,0,.45);color:white;overflow:hidden}
.kh33-history-photo img {display:block;width:100%;height:100%;object-fit:cover;transition:transform .22s ease}
.kh33-history-photo:hover img {transform:scale(1.04)}
.kh33-history-play {position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:rgba(0,0,0,.66);color:white}
.kh33-history-episode {position:absolute;right:8px;bottom:8px;background:rgba(0,0,0,.78);color:#fff;padding:4px 9px;border-radius:4px;font-size:12px;font-weight:500}
.kh33-history-details {padding:10px 12px;min-width:0}
.kh33-history-title {display:block;color:inherit;text-decoration:none;font-weight:500;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:14px}
.kh33-history-details small {display:block;margin-top:4px;opacity:.8;font-size:12px}
.kh33-account-history {margin-top:16px}
.kh33-account-history .kh33-history-list {flex-wrap:wrap;overflow:visible;scroll-snap-type:none}
.kh33-account-history .kh33-history-card {flex:0 1 calc(25% - 10px);min-width:190px}
.kh33-history-heading {display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:10px}
.kh33-history-heading h2 {font-size:18px;margin:0}
.kh33-history-clear {display:flex;align-items:center;gap:8px}
.kh33-history-clear input {width:112px;min-width:0;padding:9px;border-radius:4px;border:1px solid #888;background:transparent;color:inherit}
.kh33-history-remove {margin-top:10px}
.kh33-history-remove .btn {font-size:12px;padding:7px 10px}
.kh33-media-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:15px}
.kh33-media-tile {border:1px solid rgba(128,128,128,.25);border-radius:7px;padding:10px;min-width:0;background:rgba(127,127,127,.04)}
.kh33-media-tile>img {width:100%;height:140px;object-fit:contain;display:block;background:rgba(40,40,40,.23);border-radius:4px;margin-bottom:8px}
.kh33-media-tile strong {display:block;overflow-wrap:anywhere;font-size:13px;line-height:1.4}
.kh33-media-tile small {display:block;opacity:.75;margin:5px 0;font-size:11px}
.kh33-actions {display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-top:10px}
.kh33-actions .btn {font-size:12px;padding:8px 11px}
.kh33-upload {display:flex;align-items:end;flex-wrap:wrap;gap:14px}
.kh33-upload label {flex:1 1 300px;display:grid;gap:6px}
.kh33-upload input {max-width:100%}
.kh33-delete-form {display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:10px}
.kh33-delete-form input {width:107px;min-width:0;padding:7px;background:transparent;border:1px solid #999;color:inherit}
.kh33-delete-form button[disabled] {opacity:.4;cursor:not-allowed}
.kh33-clean-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:13px}
.kh33-clean-item {display:flex;flex-direction:column;gap:8px;border:1px solid rgba(128,128,128,.27);padding:14px;border-radius:6px}
.kh33-clean-item strong {font-size:14px}.kh33-clean-item>span {font-size:13px;opacity:.8}
.kh33-clean-item label {font-size:12px;display:grid;gap:4px}
.kh33-clean-item input {width:100%;max-width:200px;padding:8px;color:inherit;background:transparent;border:1px solid #888}
.kh33-clean-item button {align-self:flex-start;margin-top:auto}
.kh33-clean-item button[disabled] {opacity:.4;cursor:not-allowed}
.kh33-history-card a:focus-visible,.kh33-media-tile button:focus-visible,.kh33-media-tile a:focus-visible {outline:2px solid var(--accent,#69f0ae);outline-offset:2px}
@media(max-width:840px){.kh33-account-history .kh33-history-card {flex-basis:calc(50% - 8px)}}
@media(max-width:520px){.kh33-history-list{gap:10px}.kh33-history-card{flex-basis:70vw}.kh33-account-history .kh33-history-card{flex:1 1 100%;max-width:100%}.kh33-history-card .kh33-history-photo{aspect-ratio:16/9}.kh33-media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.kh33-media-tile{padding:7px}.kh33-media-tile>img{height:108px}.kh33-history-heading{align-items:start}.kh33-clean-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.kh33-history-photo img{transition:none}.kh33-history-list{scroll-snap-type:none}}

.kh33-page-nav{display:flex;gap:9px;justify-content:space-between;flex-wrap:wrap;margin-top:16px}
