/* One library design for management and television viewing. */
.library-surface .tab {display:flex;align-items:center;justify-content:center;gap:8px;min-height:38px;font-size:12px;padding:9px 11px;border-radius:5px;background:transparent;border:1px solid transparent;color:#c5d4e3;white-space:nowrap;}
.library-surface .tab>.ui-icon {width:18px;height:18px;}
.library-surface .tab:hover {background:#152b3e;color:#edf7ff;}
.library-surface .tab.active {color:#f1f7ff;background:linear-gradient(125deg,#2b4862,#182c40);border-color:#557994;box-shadow:inset 0 1px #ffffff0c;}
.library-surface .library-search-label {position:relative;display:block;min-width:0;margin:0;}
.library-surface .library-search-label .ui-icon {position:absolute;left:12px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:#c0d2e4;pointer-events:none;}
.library-surface .library-search-label input {height:40px;margin:0;font-size:13px;padding:9px 10px 9px 38px;border-radius:7px;background:#06131f;border-color:#274359;}
.library-surface .library-controls label {position:relative;display:block;color:#b3c5d6;font-size:12px;margin:0;min-width:0;}
.library-surface .library-controls label>.ui-icon {position:absolute;top:11px;left:12px;width:18px;height:18px;pointer-events:none;}
.library-surface .library-controls select {height:40px;width:100%;min-width:0;margin:0;padding:8px 21px 8px 37px;font-size:12px;border-radius:7px;border-color:#274359;background:#06131f;text-overflow:ellipsis;}
.library-surface .library-grid {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px 12px;align-items:stretch;}
.library-surface .library-card {display:flex;flex-direction:column;position:relative;background:#071520;border:1px solid #355167;border-radius:7px;overflow:visible;min-width:0;transition:border-color .16s,box-shadow .16s;}
.library-surface .library-card:hover {border-color:#6893b1;box-shadow:0 6px 24px #0005;}
.library-surface .library-card .thumb {aspect-ratio:2/3;height:auto;background:linear-gradient(145deg,#203f55,#0c1b2b);position:relative;overflow:hidden;border:0;border-radius:6px 6px 0 0;}
.library-surface .library-card .thumb::after {content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#071520 98%);pointer-events:none;}
.library-surface .thumb-placeholder {color:#7aabc9;font-size:50px;}
.library-surface .library-card .cover-image {object-fit:contain;}
.library-surface .library-card .info {position:relative;z-index:3;padding:0 9px 9px;margin-top:-28px;flex:1;gap:0;min-width:0;}
.library-surface .library-card .info>strong {display:block;min-height:22px;margin:0 0 7px;font-size:14px;line-height:22px;font-weight:600;color:#f4f7fb;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
.library-surface .library-card .card-metadata {position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}
.library-surface .library-card .actions {display:grid;grid-template-columns:minmax(0,1fr) 33px;align-items:center;gap:7px;margin-top:auto;}
.library-surface .library-card .library-play {grid-column:auto;font-size:12px;font-weight:600;padding:7px 8px;min-height:35px;background:linear-gradient(135deg,#243c51,#172b3e);color:#ecf5fc;border:1px solid #466882;border-radius:5px;white-space:nowrap;}
.library-surface .library-card .library-play::before {content:"";display:inline-block;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:12px solid #3acafb;margin-right:9px;vertical-align:-3px;}
.library-surface .library-card .library-play:hover {background:#244a67;border-color:#6b9dbd;}
.library-surface .library-card .cover-favorite {display:grid;place-items:center;position:absolute;width:32px;height:34px;top:5px;right:5px;border-radius:5px;padding:0;font-size:27px;line-height:1;color:#e4f3fc;text-shadow:0 1px 3px #000b;border:0;background:#06111a36;z-index:2;}
.library-surface .library-card .cover-favorite.is-favorite {color:#ffd366;}
.library-surface .watched-badge {bottom:39px;left:8px;right:auto;padding:4px 7px;background:#08241fed;border:1px solid #376553;color:#aae2c3;font-size:10px;z-index:2;}
.library-surface .watch-progress {position:absolute;left:9px;right:9px;bottom:38px;z-index:2;width:calc(100% - 18px);height:4px;border:0;border-radius:4px;overflow:hidden;appearance:none;background:#bbd2e14d;color:#20c2ed;}
.library-surface .watch-progress::-webkit-progress-bar {background:#bbd2e14d;}
.library-surface .watch-progress::-webkit-progress-value {background:#20c2ed;}
.library-surface .watch-progress::-moz-progress-bar {background:#20c2ed;}
.library-surface [data-popover] { position: relative; flex: none; }
.library-surface [data-popover]>summary { list-style: none; cursor: pointer; }
.library-surface .empty { padding: 44px 24px; border: 1px dashed #33435b; border-radius: 13px; background: #111c2b; text-align: center; }
.library-surface .empty-symbol { display: block; color: #65b6e6; font-size: 40px; line-height: 1; }
.library-surface .empty h3 { color: #dbe9fa; font-size: 20px; font-weight: 600; margin: 16px 0 8px; }
.library-surface .empty p { color: #9aacC5; max-width: 500px; margin: 0 auto 20px; line-height: 1.6; font-size: 14px; }
.library-surface .empty .outline { min-height: 44px; }
.library-surface .library-msg { margin: 0 0 15px; padding: 10px 13px; border-radius: 9px; background: #172b3d; border: 1px solid #2b4962; font-size: 13px; line-height: 1.5; }
.library-surface .library-msg:empty { display: none; }
.library-surface .library-msg.success { color: #99e3bc; }

.library-surface .library-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:24px 16px;}
.library-surface .library-card .thumb-placeholder{display:grid;place-items:center;width:100%;height:100%;}
.library-surface .library-card .info>strong{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:44px;line-height:22px;overflow:hidden;}
.library-surface .library-card .info{padding:0 10px 10px;}
.library-surface .library-card .library-play{display:block;text-align:center;}
.library-surface .library-card .watch-progress{bottom:38px;}
.library-surface .library-purpose{margin:0 0 17px;color:#a4b9ce;font-size:14px;line-height:1.6;}
.library-surface .library-title h1{margin:0;font-size:32px;font-weight:700;line-height:1.3;letter-spacing:-.5px;}
.library-surface .tool-count{font-size:13px;font-weight:500;color:#67d7ff;min-width:30px;padding:4px 10px;background:#152a3d;border:1px solid #1e3a51;border-radius:20px;text-align:center;}
.library-surface .result-count{font-size:13px;color:#91acc4;}
.library-surface .result-count:empty{display:none;}
.library-surface .library-connection{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 15px;margin:0 0 20px;background:#0d2030;border:1px solid #29465b;border-radius:9px;}
.library-surface .library-connection strong{font-size:14px;color:#e0f1ff;}
.library-surface .library-connection p{margin:3px 0 0;color:#9db6c9;font-size:13px;line-height:1.5;}
.library-surface .library-connection .outline{margin-left:auto;min-height:40px;font-size:13px;}
.library-surface .library-connection .online{color:#98e2bc;}
.library-surface :is(button,input,select,a):focus-visible{outline:3px solid #64d9ff;outline-offset:4px;}
@media(min-width:1600px){.library-surface .library-card .info>strong{font-size:16px;}.library-surface .library-card .library-play{font-size:14px;}}
@media(max-width:1190px){.library-surface .library-grid{grid-template-columns:repeat(5,minmax(0,1fr));}}
@media(max-width:940px){.library-surface .library-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media(max-width:700px){.library-surface .library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 12px;}.library-surface .library-card .info>strong{font-size:13px;}.library-surface .library-card .library-play{font-size:12px;padding-inline:4px;}.library-surface .library-card .info{padding:0 7px 8px;}.library-surface .library-connection .outline{margin-left:0;}.library-surface .library-purpose{font-size:13px;}}
@media(max-width:540px){.library-surface .library-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.library-surface .library-title h1{font-size:26px;}}
.library-surface .library-tabs{display:flex;align-items:center;gap:0;padding:0;min-width:0;margin:0;border:1px solid #203a50;border-radius:7px;overflow:hidden;}
@media(max-width:700px){.library-surface .library-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));}.library-surface .tab{min-width:0;padding:10px 4px;font-size:11px;gap:4px;}.library-surface .tab>.ui-icon{width:16px;height:16px;}}
@media(max-width:350px){.library-surface .tab>.ui-icon{display:none;}.library-surface .tab{font-size:10px;}}
