/* Beyond Training v4.5.0 - polish mirato Libreria, loading e Builder. */
#studentLibrary{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.modern-library-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #dbe4ec;box-shadow:0 12px 28px rgba(20,43,66,.09);transition:transform .18s ease,box-shadow .18s ease}
.modern-library-card:hover{transform:translateY(-2px);box-shadow:0 17px 34px rgba(20,43,66,.14)}
.modern-library-card .library-card-image{position:relative;aspect-ratio:2/1;height:auto!important;background:#07131d;overflow:hidden}
.modern-library-card .library-card-body{display:flex;flex-direction:column;gap:9px;flex:1;padding:15px}
.modern-library-card h3{font-size:17px;line-height:1.25;margin:0;min-height:42px}
.modern-library-card .library-card-kicker{display:flex;justify-content:space-between;align-items:center;gap:8px}
.modern-library-card .library-card-body>.btn{margin-top:auto;width:100%}
.library-state-badge{position:absolute;top:10px;right:10px;z-index:3;padding:5px 9px;border-radius:999px;background:rgba(4,16,25,.82);border:1px solid rgba(255,255,255,.22);color:#fff;font-size:11px;font-weight:800;backdrop-filter:blur(6px)}
.is-assigned .library-state-badge{background:rgba(30,145,70,.9)}
.library-locked{background:#edf2f6!important;color:#52677a!important;border-color:#d5e0e8!important}
.exercise-loading-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;width:100%}.exercise-skeleton{height:250px;border-radius:16px;overflow:hidden;background:#fff;border:1px solid #e0e7ed;padding:14px}.exercise-skeleton span,.exercise-skeleton i,.exercise-skeleton b{display:block;border-radius:8px;background:linear-gradient(90deg,#edf2f6 25%,#f8fafb 50%,#edf2f6 75%);background-size:220% 100%;animation:exerciseShimmer 1.25s infinite}.exercise-skeleton span{height:115px;margin:-14px -14px 15px}.exercise-skeleton i{height:13px;margin:9px 0}.exercise-skeleton i:nth-of-type(2){width:65%}.exercise-skeleton b{height:36px;margin-top:22px}@keyframes exerciseShimmer{to{background-position:-220% 0}}

#diagramBuilderModal .premium-builder-header{display:grid;grid-template-columns:auto minmax(150px,1fr) auto auto;align-items:center;gap:8px;padding:7px 10px;min-width:0}
#diagramBuilderModal .premium-builder-title{min-width:0;overflow:hidden;text-align:center}
#diagramBuilderModal .premium-builder-title b,#diagramBuilderModal .premium-builder-title span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#diagramBuilderModal .premium-builder-status{max-width:200px;overflow:hidden;text-overflow:ellipsis}
#diagramBuilderModal #saveBuilder{white-space:nowrap;min-width:max-content;max-width:260px;padding-inline:14px}
#diagramBuilderModal .premium-toolbar{gap:4px;padding:5px 8px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}
#diagramBuilderModal .premium-tool{min-height:34px;padding:5px 9px;white-space:nowrap}
#diagramBuilderModal .premium-builder-shell{height:calc(100dvh - 100px)!important}
#diagramBuilderModal .premium-builder-left,#diagramBuilderModal .premium-builder-right{min-width:0}
.trajectory-style-choice{margin-top:12px;padding-top:12px;border-top:1px solid #2a3945}.trajectory-style-choice>span{display:block;color:#8fa2b2;font-size:10px;font-weight:850;letter-spacing:.1em;margin-bottom:7px}.trajectory-style-choice>div{display:grid;grid-template-columns:1fr 1fr;gap:5px}.trajectory-style-choice button{min-width:0;padding:7px 5px;border:1px solid #344653;border-radius:7px;background:#0b141c;color:#b9c8d3}.trajectory-style-choice button.active{background:#153d58;border-color:#34a7e2;color:#fff}.trajectory-style-choice small{display:block;color:#8294a2;line-height:1.35;margin-top:7px}.trajectory-corridor{pointer-events:none}
@media(max-width:1450px){#diagramBuilderModal .premium-builder-status{max-width:125px}#diagramBuilderModal .premium-tool{padding-inline:7px}#diagramBuilderModal .premium-builder-left{padding:8px}#diagramBuilderModal .premium-builder-right{padding:8px}}
@media(max-width:900px){#studentLibrary{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}#diagramBuilderModal .premium-builder-status{display:none}#diagramBuilderModal .premium-builder-header{grid-template-columns:auto 1fr auto}}
