@import"https://cdnjs.cloudflare.com/ajax/libs/cropperjs/1.6.2/cropper.min.css";:root{--zoom-factor: 1;--brand-blue: #003385;--brand-red: #E52626;--brand-silver: #D6D2C4;--primary-color: var(--brand-blue);--primary-color-light: #4f80ff;--accent-color-text: #8cb4ff;--danger-color: var(--brand-red);--background-color: #0f172a;--surface-color: rgba(30, 41, 59, .6);--surface-color-hover: rgba(51, 65, 85, .7);--surface-color-inset: rgba(15, 23, 42, .5);--text-color: #f8fafc;--text-color-secondary: #cbd5e1;--glass-border-top: rgba(255, 255, 255, .1);--glass-border-bottom: rgba(255, 255, 255, .03);--border-color: rgba(255, 255, 255, .08);--white: #fff;--success-color: #10b981;--pending-color: #f59e0b;--approved-color: var(--primary-color);--glass-blur: blur(16px);--shadow-ambient: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-interactive: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-glow: 0 0 15px rgba(56, 189, 248, .15);--scrollbar-thumb-color: rgba(255, 255, 255, .1);--scrollbar-thumb-hover-color: rgba(255, 255, 255, .2);--font-family: "Inter", "Roboto", sans-serif;--header-height: 60px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--space-xs: .375rem;--space-sm: .75rem;--space-md: 1.25rem;--space-lg: 2rem;--font-size-base: .9375rem;--font-size-sm: .8125rem;--font-size-lg: 1.125rem}html[data-theme=light]{--primary-color: var(--brand-blue);--accent-color-text: #003385;--danger-color: var(--brand-red);--background-color: #f0f4f8;--surface-color: rgba(255, 255, 255, .65);--surface-color-hover: rgba(255, 255, 255, .8);--surface-color-inset: rgba(241, 245, 249, .6);--text-color: #1e293b;--text-color-secondary: #64748b;--glass-border-top: rgba(255, 255, 255, .8);--glass-border-bottom: rgba(200, 200, 200, .3);--border-color: rgba(0, 0, 0, .08);--shadow-ambient: 0 8px 20px rgba(0, 0, 0, .06);--shadow-interactive: 0 15px 35px rgba(0, 0, 0, .1);--shadow-glow: 0 0 20px rgba(0, 81, 205, .2);--scrollbar-thumb-color: rgba(0, 0, 0, .2);--scrollbar-thumb-hover-color: rgba(0, 0, 0, .3)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}html{height:100%;--zoom-factor: 1}@media(min-width:1280px){:root,html{zoom:.8;--zoom-factor: .8}}@media(max-width:1279px),(pointer:coarse){:root,html,body{zoom:1!important;--zoom-factor: 1 !important}}body{height:100%}body{font-family:var(--font-family);background-color:var(--background-color);color:var(--text-color);line-height:1.6;font-size:16px;transition:background-color .3s ease,color .3s ease;display:flex;flex-direction:column;min-height:100vh}main.main-content{flex-grow:1}a:focus-visible,button:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline:none;box-shadow:0 0 0 3px #5b8def99;transform:scale(1.03);transition:transform .1s ease}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:0 0 0 3px #5b8def99}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px var(--surface-color-inset, #0f172a) inset!important;-webkit-text-fill-color:var(--text-color, #f8fafc)!important;caret-color:var(--text-color, #f8fafc)!important;border-color:var(--border-color, rgba(255, 255, 255, .12))!important;transition:background-color 5000s ease-in-out 0s}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb-color);border-radius:10px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover-color)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb-color) transparent}.background-blurs{position:fixed;top:0;left:0;width:calc(100vw / var(--zoom-factor, 1));height:calc(100vh / var(--zoom-factor, 1));overflow:hidden;pointer-events:none;z-index:-1}.background-blurs div{position:absolute;border-radius:50%;filter:blur(80px);opacity:.6;animation:aurora-drift 12s infinite alternate ease-in-out}.blur-circle-1{top:-10%;left:-10%;width:60vw;height:60vw;background:radial-gradient(circle,#00338566,#0000 70%);animation-duration:14s}.blur-circle-2{bottom:-10%;right:-10%;width:50vw;height:50vw;background:radial-gradient(circle,#e5262626,#0000 70%);animation-delay:-2s;animation-duration:18s}.blur-circle-3{top:40%;left:40%;width:40vw;height:40vw;background:radial-gradient(circle,#3c64c826,#0000 70%);animation-delay:-5s;animation-duration:12s}@keyframes aurora-drift{0%{transform:translate(0) scale(1)}50%{transform:translate(10%,5%) scale(1.1)}to{transform:translate(-5%,-10%) scale(.9)}}.btn{padding:.5rem 1rem;height:40px;border:1px solid var(--glass-border-top);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all .2s ease-in-out;text-transform:none;letter-spacing:.3px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;line-height:1.5;background:#ffffff0d;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--text-color);box-shadow:var(--shadow-ambient);position:relative;overflow:hidden;gap:.5rem;backface-visibility:hidden;transform:translateZ(0)}.btn:hover{color:var(--white);background:#fff3;transform:translateY(-2px);border-color:#ffffff4d;box-shadow:var(--shadow-interactive)}.btn:active{transform:translateY(0);background:#0000001a;box-shadow:none}.btn:disabled{background:#6b728033;border-color:#9ca3af4d;color:#9ca3af;opacity:1;cursor:not-allowed;box-shadow:none;transform:none}.btn-sm{padding:.35rem .7rem;font-size:.75rem}.btn-primary{background:#0033854d;color:var(--white);border-color:#00338580;box-shadow:var(--shadow-ambient),0 0 #0051cd00;z-index:1}.btn-primary:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--brand-blue);border-radius:inherit;opacity:0;z-index:-1;transition:opacity .3s ease,transform .3s ease;filter:blur(15px);transform:scale(.8)}.btn-primary:hover{background:#00338580;color:var(--white);border-color:#003385b3;box-shadow:var(--shadow-interactive),var(--shadow-glow)}.btn-primary:active{background:#0033854d;box-shadow:none}.btn-secondary{--btn-bg-1: rgba(255, 255, 255, .08);--btn-bg-2: rgba(255, 255, 255, .03);--btn-bg-color: var(--text-color);background-size:280% auto;background-image:linear-gradient(325deg,var(--btn-bg-2) 0%,var(--btn-bg-1) 55%,var(--btn-bg-2) 90%);border:1px solid var(--border-color);color:var(--btn-bg-color);box-shadow:0 2px 4px #0000000d,inset 1px 1px 2px #ffffff0d,inset -1px -1px 2px #0000000d;transition:all .5s ease}.btn-secondary:hover{background-position:right top;color:var(--text-color-hover, #fff);border-color:var(--border-color-hover, rgba(255, 255, 255, .2));background-color:#ffffff1a;box-shadow:0 4px 6px #0000001a,inset 1px 1px 2px #ffffff1a,inset -1px -1px 2px #0000000d}.btn-secondary:active{background:#ffffff0d;box-shadow:inset 0 2px 4px #0003}.btn-danger{background:#e526264d;color:var(--white);border-color:#e5262680}.btn-danger:hover{background:#e5262680;color:var(--white);border-color:#e52626b3}.btn-danger:active{background:#e526264d;box-shadow:none}.btn.is-added{background:#22c55e33;border-color:#34d3994d;color:#a7f3d0}.btn-full-width{width:100%;padding:.7rem;margin-top:1rem}.btn-circle-icon,.btn-plus-icon,.btn-delete-icon{width:36px;height:36px;min-width:36px;min-height:36px;flex-shrink:0;padding:0;background:transparent!important;border:2px solid currentColor;cursor:pointer;outline:none;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;box-shadow:none}.btn-icon{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--text-color-secondary);border-radius:50%;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0;box-shadow:0 2px 4px #0000001a;border:1px solid var(--border-color)}.btn-icon svg{width:18px;height:18px}.btn-add-cart{--btn-height: 40px;position:relative;width:180px;height:var(--btn-height);cursor:pointer;display:flex;align-items:center;border:1px solid var(--primary-color);background-color:var(--primary-color);border-radius:var(--radius-md);overflow:hidden;padding:0;transition:all .3s ease;z-index:1}.btn-add-cart:hover,.btn-add-cart:active{box-shadow:var(--shadow-interactive);transform:translateY(-1px)}.btn-add-cart .btn-text{color:var(--white);font-weight:600;margin-left:1rem;flex-grow:1;text-align:center;transform:translate(0);transition:transform .3s ease-in-out;white-space:nowrap;z-index:5;padding-right:40px;position:relative}.btn-add-cart:hover .btn-text{transform:translate(.5rem)}.btn-add-cart .btn-icon-container{position:absolute;right:0;height:100%;width:40px;background:transparent;display:flex;align-items:center;justify-content:center;z-index:6}.btn-add-cart:after{content:"";position:absolute;right:0;top:0;height:100%;width:40px;background-color:#0000001a;transition:width .3s ease-in-out,background-color .3s ease;z-index:1;border-radius:0 var(--radius-md) var(--radius-md) 0}.btn-add-cart:hover:after{width:100%;background-color:#ffffff1a;border-radius:var(--radius-md)}.btn-add-cart svg{width:20px;height:20px;color:var(--white);stroke-width:2}.btn-plus-icon{color:var(--primary-color-light)}.btn-plus-icon:hover{transform:scale(1.1);background:transparent!important;box-shadow:none}.btn-plus-icon svg{width:24px;height:24px;stroke:var(--primary-color-light);color:var(--primary-color-light);fill:none;transition:all .3s ease;stroke-width:2}.btn-plus-icon:hover svg{fill:none;stroke:var(--primary-color)}.btn-plus-icon:hover{color:var(--primary-color);transform:scale(1.1);background:transparent!important;box-shadow:0 0 10px #4f80ff66}.btn-plus-icon:active svg{stroke:var(--primary-color-text);fill:var(--primary-color);transition-duration:0s}.btn-primary{--btn-bg-1: var(--primary-color-light);--btn-bg-2: var(--primary-color);--btn-bg-color: var(--white);background-size:280% auto;background-image:linear-gradient(325deg,var(--btn-bg-2) 0%,var(--btn-bg-1) 55%,var(--btn-bg-2) 90%);border:none;color:var(--btn-bg-color);box-shadow:0 0 20px #0033854d,0 5px 5px -1px #00338540,inset 4px 4px 8px #fff3,inset -4px -4px 8px #00143c33;transition:all .5s ease}.btn-primary:hover{background-position:right top;box-shadow:0 0 25px #00338580,0 5px 10px -1px #00338559,inset 4px 4px 8px #fff3,inset -4px -4px 8px #00143c33}.btn-primary:focus,.btn-primary:focus-visible,.btn-primary:active{outline:none;box-shadow:0 0 0 3px var(--white),0 0 0 6px var(--primary-color)}.btn-primary:after{display:none}.btn-delete-icon:hover{transform:scale(1.1);background:transparent!important}.btn-delete-icon svg{width:24px;height:24px;stroke:var(--text-color-secondary);fill:none;stroke-width:2;transition:all .3s ease}.btn-delete-icon{color:var(--text-color-secondary)}.btn-delete-icon:hover svg{stroke:var(--danger-color)}.btn-delete-icon:hover{color:var(--danger-color);box-shadow:0 0 8px #e5262666}.btn-delete-icon:active svg{stroke:var(--danger-color-dark);transition-duration:0s}.clone-element{transition:all .4s cubic-bezier(.4,0,.2,1);will-change:top,left,width,height}.clone-element .product-card-image-wrapper{transition:opacity .4s cubic-bezier(.4,0,.2,1)}.tilt-card{transition:transform .1s linear,box-shadow .3s ease,border-color .3s ease;transform-style:preserve-3d;will-change:transform;position:relative;backface-visibility:hidden;border:1px solid transparent;border-top-color:var(--glass-border-top);border-left-color:var(--glass-border-top);border-right-color:var(--glass-border-bottom);border-bottom-color:var(--glass-border-bottom)}.tilt-card[data-nav-tab]:hover,.tilt-card[role=button]:hover{cursor:pointer;transform:translateY(-3px) scale(1.01);box-shadow:var(--shadow-interactive);border-top-color:#ffffff80;border-left-color:#ffffff80}.tilt-card .glare{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),rgba(255,255,255,.2),transparent 40%);opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:3}.tilt-card:hover .glare{opacity:1}.card-bundle-accordion{margin-top:.5rem}.card-bundle-accordion summary{cursor:pointer;font-weight:500;padding:.25rem .5rem;border-radius:4px;list-style:none;display:inline-block;transition:background-color .2s}.card-bundle-accordion summary::-webkit-details-marker{display:none}.card-bundle-accordion summary:hover{background-color:var(--surface-color-inset)}.card-bundle-accordion ul{padding-left:1.5rem;margin-top:.5rem;font-size:.9em;color:var(--text-color-secondary)}.reservation-card{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-ambient);border:1px solid var(--glass-border-top)}.reservation-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background-color:#0000001a;border-bottom:1px solid var(--border-color)}.reservation-header h3{font-size:1rem;font-weight:400;color:var(--text-color)}.reservation-body{padding:1rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem;grid-template-areas:"dates items" "reason reason"}@media(max-width:600px){.reservation-body{grid-template-columns:1fr;grid-template-areas:"dates" "items" "reason";gap:.75rem}}.reservation-dates,.reservation-items{font-size:.9rem}.reservation-body h4{font-size:.95rem;color:var(--accent-color-text);margin-bottom:.5rem;font-weight:500}.reservation-items ul{list-style:none;padding-left:0}.reservation-items li{padding:.2rem 0}.denial-reason{margin-top:.5rem;padding:.75rem;background-color:#dc35451a;border-radius:6px;border:1px solid var(--danger-color)}.denial-reason strong{color:var(--danger-color);display:block;margin-bottom:.5rem}.denial-reason p{margin:0;font-style:italic;color:var(--text-color-secondary)}.reservation-footer{padding:.75rem 1rem;border-top:1px solid var(--border-color);background-color:#0000001a;text-align:right}.manager-card{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:var(--radius-md);margin-bottom:1rem;display:flex;flex-direction:column;box-shadow:var(--shadow-ambient);border:1px solid var(--glass-border-top);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.manager-card.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary-color)!important}.manager-card-header{padding:.75rem 1.25rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background-color:#0000001a}.manager-card-header h3{font-size:1.1rem;color:var(--accent-color-text)}.student-info{font-size:.85rem;color:var(--text-color-secondary)}.student-info span{font-weight:500;color:var(--text-color)}.manager-card-body{padding:1.25rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem}.card-details-section p{margin:0 0 .5rem;font-size:.9rem}.card-details-section strong{color:var(--text-color-secondary);font-weight:400}.card-items-list strong{display:block;margin-bottom:.5rem;font-weight:500}.card-items-list ul{list-style:none;padding:0;margin-top:.5rem}.manager-card-actions{padding:.75rem 1.25rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;align-items:center;gap:.75rem;background-color:#0000001a}.subcategory-item-grid.reorder-mode-active{padding:.75rem;background:#1e293b66;border:2px dashed var(--accent-color, #3b82f6);border-radius:var(--radius-md, 8px);transition:all .3s ease}.subcategory-item-grid.reorder-mode-active .product-card-trigger{cursor:grab!important;border:1px dashed rgba(59,130,246,.6)!important;box-shadow:0 4px 12px #00000040;-webkit-user-select:none;user-select:none;transition:transform .2s ease,opacity .2s ease,border-color .2s ease}.subcategory-item-grid.reorder-mode-active .product-card-trigger:hover{transform:scale(1.03) translateY(-2px);border-color:#60a5fa!important}.subcategory-item-grid.reorder-mode-active .product-card-trigger.dragging{opacity:.4;cursor:grabbing!important;transform:scale(1.05);border-color:#3b82f6!important;box-shadow:0 10px 25px #3b82f666}.subcategory-item-grid.reorder-mode-active .product-card-trigger.drag-over-target{border:2px solid #38bdf8!important;transform:scale(1.02)}.account-menu{position:relative}.account-menu-trigger{background:var(--surface-color);border:1px solid var(--border-color);width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:all .2s ease}.account-menu-trigger:hover,.account-menu-trigger[aria-expanded=true]{box-shadow:0 0 0 3px var(--primary-color);border-color:var(--primary-color)}.account-menu-trigger .member-avatar{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.account-menu-trigger .member-avatar svg{width:22px;height:22px}.account-menu-dropdown{position:absolute;top:calc(100% + 10px);right:0;width:260px;background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-interactive);z-index:1002;padding:.5rem;opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .2s ease,transform .2s ease,visibility .2s}.account-menu-dropdown:not([hidden]){opacity:1;visibility:visible;transform:translateY(0)}.account-menu-header{padding:.75rem 1rem;text-align:left}.account-menu-header .user-name{font-weight:500;color:var(--text-color);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-menu-header .user-email{font-size:.8rem;color:var(--text-color-secondary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-menu-separator{height:1px;background-color:var(--border-color);margin:.5rem 0}.account-menu-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.6rem 1rem;border-radius:6px;font-size:.9rem;font-family:inherit;color:var(--text-color-secondary);background:none;border:none;cursor:pointer;text-align:left;text-decoration:none;transition:background-color .2s,color .2s;box-sizing:border-box;position:relative}.account-menu-item .account-menu-label{flex:1 1 auto}.account-menu-item:hover{background-color:var(--surface-color-hover);color:var(--text-color)}.account-menu-item svg{width:18px;height:18px;flex-shrink:0}.account-menu-item.is-disabled{opacity:.6;cursor:not-allowed;justify-content:space-between}.account-menu-item.is-disabled:hover{background-color:transparent;color:var(--text-color-secondary)}.soon-badge{font-size:.7rem;font-weight:500;background-color:var(--surface-color-inset);color:var(--text-color-secondary);padding:.1rem .4rem;border-radius:4px}.notification-dot{position:absolute;top:0;right:0;width:10px;height:10px;background-color:var(--danger-color);border-radius:50%;border:2px solid var(--surface-color);z-index:10;pointer-events:none}.account-menu-trigger .member-avatar{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.notification-badge{background-color:var(--danger-color);color:#fff;font-size:.72rem;font-weight:700;min-width:18px;height:18px;padding:0 5px;border-radius:999px;margin-left:auto!important;display:inline-flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0;box-shadow:0 1px 3px #ef444466}.main-header{background-color:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);height:var(--header-height);padding:0 var(--space-md);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--glass-border-bottom);box-shadow:var(--shadow-ambient);position:relative;z-index:1001}.header-logo{font-size:1.5rem;font-weight:700;color:var(--text-color);text-decoration:none;display:flex;align-items:center;height:100%}.header-logo img{height:35px;width:auto;display:block}.nav-links{display:flex;gap:1.25rem;list-style:none}.nav-links a{text-decoration:none;font-weight:500;font-size:.9rem;position:relative;display:inline-block}.animated-link-container{height:1.2em;overflow:hidden;line-height:1.2em}.animated-link-inner{display:flex;flex-direction:column;transition:transform .3s cubic-bezier(.76,0,.24,1)}.animated-link-inner span{display:block;height:1.2em}.animated-link-inner span:first-child{color:var(--text-color-secondary)}.animated-link-inner span:last-child{color:var(--white)}.nav-links a:hover .animated-link-inner,.nav-links a.active .animated-link-inner{transform:translateY(-50%)}.header-actions{display:flex;align-items:center;gap:.75rem}.cart-link{position:relative;background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);cursor:pointer;padding:.4rem;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:all .2s ease-in-out}.cart-link:active{background:#0003}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.cart-link.shake{animation:shake .82s cubic-bezier(.36,.07,.19,.97) both}#cart-icon{width:24px;height:24px;color:var(--text-color-secondary);transition:color .3s ease}.cart-link:hover #cart-icon{color:var(--white)}#cart-badge{position:absolute;top:2px;right:2px;background-color:var(--danger-color);color:#fff;width:18px;height:18px;border-radius:50%;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center;transform:scale(0);transition:transform .2s ease-in-out;border:2px solid var(--surface-color)}#cart-badge:not(:empty){transform:scale(1)}.search-bar-container{max-width:600px;margin:0 auto 2rem;position:relative}.search-bar{position:relative;display:flex;align-items:center;width:100%;background-color:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:999px;border:1px solid var(--border-color);transition:border-color .3s ease,background-color .3s ease}.search-bar:focus-within{border-color:#00338580;background-color:var(--surface-color-hover)}.search-icon{position:absolute;left:1rem;width:20px;height:20px;color:var(--text-color-secondary);pointer-events:none;transition:color .3s ease}.search-bar:focus-within .search-icon{color:var(--primary-color)}#equipment-search-input{width:100%;padding:.75rem 1rem .75rem 3rem;border:none;background-color:transparent;color:var(--text-color);border-radius:999px;font-size:1rem;font-family:inherit;outline:none}#equipment-search-input::placeholder{color:var(--text-color-secondary)}#equipment-search-input::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}#search-results-container{position:absolute;top:calc(100% + 5px);left:0;right:0;background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:12px;z-index:100;max-height:400px;overflow-y:auto;border:1px solid var(--border-color)}.search-result-item{display:flex;align-items:center;padding:.75rem 1rem;cursor:pointer;transition:background-color .2s}.search-result-item:hover{background-color:#ffffff0d}.search-result-item .result-name{font-weight:500}.search-result-item .result-type{font-size:.8rem;color:var(--text-color-secondary);margin-left:auto;background-color:var(--background-color);padding:.2rem .5rem;border-radius:6px}.mobile-menu-btn{display:none;flex-direction:column;justify-content:space-around;width:2rem;height:2rem;background:transparent;border:none;cursor:pointer;padding:0;z-index:1051}.mobile-menu-btn:focus{outline:none}.mobile-menu-btn span{width:2rem;height:.25rem;background:var(--text-color);border-radius:10px;transition:all .3s linear;position:relative;transform-origin:1px}.mobile-nav-panel{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--background-color);z-index:1050;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform .4s cubic-bezier(.4,0,.2,1);transform:translate(-100%);padding-top:var(--header-height);box-sizing:border-box}.mobile-nav-panel.open{transform:translate(0)}.mobile-nav-panel .nav-links{flex-direction:column;align-items:center;gap:2rem}.mobile-nav-panel .nav-links a{font-size:1.5rem}#mobile-sidebar-toggle-btn{display:none;z-index:1051}body.mobile-nav-open .mobile-menu-btn span:first-child{transform:rotate(45deg)}body.mobile-nav-open .mobile-menu-btn span:nth-child(2){opacity:0;transform:translate(20px)}body.mobile-nav-open .mobile-menu-btn span:last-child{transform:rotate(-45deg)}@media(max-width:768px){.main-header{padding:0 1rem;z-index:1060}.main-header .nav-links{display:none}.mobile-nav-panel .nav-links,.mobile-menu-btn{display:flex}.header-actions{gap:.5rem}.account-menu-dropdown{position:fixed;top:var(--header-height);left:0;right:0;width:100%;border-radius:0 0 12px 12px;transform:translateY(-10px)}}.main-footer{background-color:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-top:1px solid var(--border-color);padding:2.25rem 1rem 1.5rem;margin-top:3rem;color:var(--text-color-secondary)}.footer-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.footer-column h4{font-size:.8rem;font-weight:500;color:var(--text-color);margin-bottom:.75rem}.footer-column p{font-size:.75rem;line-height:1.6}.footer-links{list-style:none;padding:0;display:flex;flex-direction:column;gap:.5rem}.footer-links a{text-decoration:none;color:var(--text-color-secondary);transition:color .2s;font-size:.75rem}.footer-links a:hover{color:var(--text-color);text-decoration:underline}.footer-socials{margin-top:.75rem}.footer-socials .social-btn{padding:.6rem}.footer-socials .social-btn-icon{width:1rem;height:1rem}@media(max-width:768px){.footer-content{text-align:center;gap:2.25rem}.footer-column .btn{width:100%}.footer-socials{justify-content:center}}#modal-container:not([hidden]){position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;max-width:100vw;height:100%;height:100dvh;max-height:100dvh;background-color:#0009;display:flex;align-items:center;justify-content:center;overflow:hidden!important;padding:max(12px,env(safe-area-inset-top,12px)) 12px max(12px,env(safe-area-inset-bottom,12px)) 12px;z-index:2000;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-sizing:border-box}#modal-container.visible{opacity:1;visibility:visible}.modal-content{background-color:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:var(--space-lg);border-radius:var(--radius-lg);width:auto;min-width:min(90vw,320px);max-width:min(92vw,550px);margin:auto;opacity:0;transform:translateY(10px) scale(.98);transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;max-height:calc(100dvh - max(24px,env(safe-area-inset-top,12px) + env(safe-area-inset-bottom,12px) + 24px))!important;overflow:hidden!important;box-shadow:var(--shadow-interactive);border:1px solid var(--glass-border-top);box-shadow:0 0 0 1px #ffffff0d,var(--shadow-interactive);box-sizing:border-box}#modal-container .modal-content.large-modal{width:min(94vw,1200px)!important;max-width:min(94vw,1200px)!important;height:auto!important;max-height:calc(100dvh - max(24px,env(safe-area-inset-top,12px) + env(safe-area-inset-bottom,12px) + 24px))!important}#modal-container.visible .modal-content{transform:translateY(0) scale(1);opacity:1}.modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color);padding-bottom:1rem;flex-shrink:0;position:relative}.modal-header h2{font-size:1.25rem;font-weight:500}.close-modal-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-color-secondary);line-height:1}.close-modal-btn:hover{color:var(--text-color)}.modal-body{overflow-y:auto!important;flex:1 1 auto;min-height:0}.modal-footer{margin-top:1.5rem;border-top:1px solid var(--border-color);padding-top:1rem;display:flex;justify-content:flex-end;align-items:center;gap:.75rem;flex-shrink:0}.back-modal-btn{position:absolute;left:0;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-color-secondary);cursor:pointer;padding:.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.back-modal-btn:hover{background-color:var(--surface-color-hover)}.back-modal-btn svg{width:24px;height:24px}.modal-header.has-back-btn h2{text-align:center;flex-grow:1;padding:0 2.5rem}.modal-header.has-back-btn .close-modal-btn{position:absolute;right:0;top:50%;transform:translateY(-50%)}.form-group,.modal-form-group{margin-bottom:1.25rem;text-align:left}.form-group label,.modal-form-group label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.85rem}.form-group input,.modal-form-group input,.modal-form-group select,.modal-form-group textarea,.unit-selector,.modal-search,.unit-selector-dropdown,.bundle-unit-selector-dropdown,.form-control,.modal-content input[type=text],.modal-content input[type=search],.modal-content input[type=number],.modal-content input[type=url],.modal-content input[type=email],.modal-content input[type=password],.modal-content input[type=date],.modal-content select,.modal-content textarea{width:100%;padding:.75rem;border:1px solid var(--border-color, rgba(255, 255, 255, .12));background-color:var(--surface-color-inset, #0f172a);color:var(--text-color, #f8fafc);border-radius:8px;font-size:.92rem;font-family:inherit;box-sizing:border-box;transition:background-color .2s,border-color .2s,box-shadow .2s}.modal-content select,.form-control select,select.form-control,select.modal-search,.bundle-unit-room-select,.bundle-unit-slot-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .65rem center;background-size:14px;padding-right:2rem!important;cursor:pointer}.modal-content select option,.form-control option,select.form-control option{background-color:#1e293b;color:#f8fafc;padding:6px 10px}.modal-search{margin-bottom:1rem}.modal-search.tiny{padding:.4rem;font-size:.85em;margin-bottom:.5rem;flex:0 0 auto}.form-group input:focus,.modal-form-group input:focus,.modal-form-group select:focus,.modal-form-group textarea:focus,.unit-selector:focus,.modal-search:focus,.unit-selector-dropdown:focus,.bundle-unit-selector-dropdown:focus,.form-control:focus,.modal-content input:focus,.modal-content select:focus,.modal-content textarea:focus{outline:none;border-color:var(--primary-color-light, #4f80ff)!important;background-color:#0f172ad9!important;box-shadow:0 0 0 2px #4f80ff33!important}.bundle-unit-row{background:var(--surface-color-inset, rgba(15, 23, 42, .45))!important;border:1px solid var(--border-color, rgba(255, 255, 255, .08))!important;border-radius:10px!important;padding:1.1rem 1.25rem!important;margin-bottom:.85rem!important;transition:border-color .2s ease,background .2s ease}.bundle-unit-row:hover{border-color:#ffffff29!important}.bundle-unit-row h5{font-size:.95rem!important;font-weight:700!important;color:var(--text-color, #f8fafc)!important;letter-spacing:-.01em}.bundle-unit-room-select,.bundle-unit-location-input{background-color:#1e293bb3!important;border:1px solid rgba(255,255,255,.12)!important;color:var(--text-color, #f8fafc)!important;border-radius:6px!important;padding:.45rem .75rem!important;font-size:.85rem!important}.bundle-unit-location-input::placeholder{color:var(--text-color-secondary, #64748b)!important;opacity:.8}.bundle-unit-slot-select{background-color:#1e293bcc!important;border:1px solid rgba(255,255,255,.12)!important;color:var(--text-color, #f8fafc)!important;border-radius:6px!important;padding:.3rem 1.75rem .3rem .6rem!important}.modal-form-group textarea{min-height:80px;resize:vertical}.item-details-layout{display:flex;flex-direction:column}.modal-form-group-checkbox{display:flex;align-items:center;gap:.75rem}.modal-form-group-checkbox input[type=checkbox]{width:auto}.modal-form-group-checkbox .form-text{margin:0;font-size:.8rem;font-style:italic}.form-group-row{display:flex;gap:1.5rem;align-items:flex-start}.form-group-row>.modal-form-group{flex:1}.cart-item,.cart-bundle-item summary{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;gap:1rem}.cart-item-name,.bundle-summary-content strong{font-weight:500}.cart-item-unit,.bundle-item-count{font-size:.8rem;color:var(--text-color-secondary)}.remove-from-cart-btn{background:none;border:none;color:var(--danger-color);font-size:1.25rem;cursor:pointer}.cart-empty-message{text-align:center;padding:2rem 0;color:var(--text-color-secondary)}.cart-bundle-item details{width:100%}.cart-bundle-item summary{cursor:pointer;list-style:none}.cart-bundle-item summary::-webkit-details-marker{display:none}.bundle-inner-list{list-style:disc;padding-left:2rem;margin-top:.75rem;font-size:.9rem;color:var(--text-color-secondary)}.image-upload-wrapper{display:flex;flex-direction:column;gap:.75rem;align-items:flex-start;width:100%}.modal-thumbnail-preview,#item-image-preview,#bundle-image-preview,#group-image-preview,#announcement-image-preview,#splash-image-preview,#prod-image-preview,#room-image-preview{width:100%;max-width:380px;height:240px;object-fit:contain;border-radius:12px;border:1px solid var(--border-color);background:#0f172a99;box-shadow:0 4px 16px #00000040;transition:transform .25s cubic-bezier(.4,0,.2,1),border-color .25s ease}.modal-thumbnail-preview:hover,#item-image-preview:hover,#bundle-image-preview:hover,#group-image-preview:hover{border-color:var(--accent-color, #3b82f6);transform:scale(1.015)}.modal-thumbnail-preview:not([src]),.modal-thumbnail-preview[src=""],#item-image-preview:not([src]),#bundle-image-preview:not([src]),#group-image-preview:not([src]),#announcement-image-preview:not([src]),#splash-image-preview:not([src]),#prod-image-preview:not([src]),#room-image-preview:not([src]){display:none!important}.checkbox-group{display:flex;align-items:center;gap:.5rem}.checkbox-group input{width:auto}.bundle-form-main{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;gap:2rem;overflow:hidden;flex-grow:1}.bundle-pane{display:flex;flex-direction:column;overflow:hidden}.bundle-pane-content{overflow-y:auto;padding:.5rem 1rem 1rem;flex-grow:1;background:var(--surface-color-inset);border-radius:8px}.bundle-category-accordion,.bundle-subcategory-accordion{margin-bottom:.5rem;border-radius:6px;background:#00000026;border:1px solid var(--border-color)}.bundle-category-accordion{background:var(--surface-color)}.bundle-category-accordion>summary,.bundle-subcategory-accordion>summary{font-weight:500;cursor:pointer;padding:.6rem 2.5rem .6rem .8rem;list-style:none;position:relative;transition:background-color .2s}.bundle-category-accordion>summary::-webkit-details-marker,.bundle-subcategory-accordion>summary::-webkit-details-marker,.check-in-bundle-summary::-webkit-details-marker{display:none}.bundle-category-accordion>summary:hover,.bundle-subcategory-accordion>summary:hover{background-color:#ffffff0d}.bundle-category-accordion>summary{font-size:.9rem}.bundle-category-accordion>summary:before,.bundle-subcategory-accordion>summary:before,.check-in-bundle-summary:before{content:"▸";position:absolute;right:1rem;top:50%;transform:translateY(-50%) rotate(0);transition:transform .2s ease-in-out;color:var(--text-color-secondary);font-size:1.1em}.bundle-category-accordion[open]>summary:before,.bundle-subcategory-accordion[open]>summary:before,.check-in-bundle[open]>.check-in-bundle-summary:before{transform:translateY(-50%) rotate(90deg)}.bundle-accordion-content{padding:.5rem .5rem .5rem 1rem}.bundle-subcategory-accordion .bundle-accordion-content{padding-left:1.5rem}.bundle-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;gap:1rem}.bundle-item>span{flex-grow:1;min-width:0}.add-item-to-bundle-btn,.remove-item-from-bundle-btn{font-size:1.25rem;line-height:1;flex-shrink:0}#student-details-modal .modal-content,#item-details-modal .modal-content{max-width:750px}.student-modal-header{display:flex;align-items:center;gap:1rem;padding-bottom:1rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.student-modal-header-info h2{font-size:1.5rem;margin:0}.student-modal-header-info span{font-size:.9rem;color:var(--text-color-secondary)}.modal-tabs{display:flex;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;max-width:100%;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;padding-bottom:6px;margin-bottom:1rem;box-sizing:border-box;scrollbar-width:none}.modal-tabs::-webkit-scrollbar{display:none}.modal-tab-content{display:none}.modal-tab-content.active{display:block}.academics-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.management-column h4{margin-top:0;margin-bottom:.5rem}.management-checklist,.class-checklist,.student-history-list{max-height:250px;overflow-y:auto;padding:.75rem;border-radius:6px;background:var(--surface-color-inset);display:flex;flex-direction:column;gap:.5rem}.student-history-item{padding:.75rem;border-radius:4px;border-bottom:1px solid transparent;cursor:pointer;transition:background-color .2s,border-color .2s}.student-history-item:hover{background-color:#ffffff08;border-color:var(--border-color)}.student-history-item.maintenance{border-left:3px solid var(--pending-color);padding-left:calc(.75rem - 3px)}.form-footer{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem}.link-btn{background:none;border:none;color:var(--text-color-secondary);cursor:pointer;text-decoration:underline;font-size:.9rem}.link-btn:hover{color:var(--text-color)}#toast-container{position:fixed;top:1rem;right:1rem;z-index:100000;display:flex;flex-direction:column;gap:.5rem}.toast{background-color:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--text-color);padding:1rem 1.5rem;border-radius:8px;border:1px solid var(--border-color);box-shadow:0 4px 10px #0003;opacity:0;transform:translate(100%);transition:opacity .3s ease,transform .3s ease;font-weight:500}.toast.visible{opacity:1;transform:translate(0)}.student-select-list{max-height:40vh;min-height:15vh;overflow-y:auto;border-radius:6px;background:var(--surface-color-inset);padding:.5rem}.student-select-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border-radius:4px;cursor:pointer;transition:background-color .2s}.student-select-item:hover{background-color:#ffffff0d}.student-select-item.selected{background-color:var(--primary-color);color:var(--white)}.student-select-item .name{font-weight:500}.student-select-item .id{font-size:.8rem;opacity:.7}.checkout-equipment-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;height:42vh;overflow:hidden;margin-top:1rem}.checkout-inventory-pane,.checkout-cart-pane{display:flex;flex-direction:column;overflow:hidden}.checkout-inventory-list,.checkout-cart-list{flex-grow:1;overflow-y:auto;padding:.5rem;background:var(--surface-color-inset);border-radius:8px}.checkout-inventory-list details summary{padding:.5rem;cursor:pointer;font-weight:500}.checkout-inventory-item,.checkout-bundle-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;margin-left:1rem;gap:1rem}.checkout-inventory-item>span,.checkout-bundle-item>span{flex-grow:1;min-width:0}.checkout-cart-item{display:flex;flex-direction:column;align-items:stretch;padding:.75rem .6rem;border-bottom:1px solid var(--border-color);gap:.75rem}.checkout-cart-item:last-child{border-bottom:none}.cart-item-main-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.cart-item-image{width:40px;height:40px;border-radius:4px;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#0000001a}.cart-item-image img{width:100%;height:100%;object-fit:cover}.cart-item-image .image-placeholder{width:100%;height:100%}.cart-item-image .image-placeholder svg{width:20px;height:20px}.cart-item-info-col{flex-grow:1;display:flex;flex-direction:column;min-width:0}.cart-item-main-row .item-name{font-weight:500}.cart-item-controls{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.cart-item-controls .quantity-input{width:70px}.cart-item-instances-list{display:flex;flex-direction:column;gap:1rem;padding:1rem 0 .25rem 1rem;border-left:3px solid var(--border-color);margin-left:.25rem}.cart-item-instance{display:flex;align-items:center;gap:.75rem}.cart-item-instance label{font-size:.85rem;color:var(--text-color-secondary);flex-shrink:0}.unit-selector-dropdown{flex-grow:1;padding:.5rem;font-size:.9rem}.remove-cart-item-btn{background:none;border:none;color:var(--danger-color);font-size:1.5rem;cursor:pointer}.checkout-cart-item.is-bundle .bundle-inner-list{list-style:none;padding:.5rem .6rem .6rem 1rem;background-color:var(--surface-color-inset);border-top:1px solid var(--border-color);border-radius:0 0 6px 6px;margin-top:.5rem}.checkout-cart-item.is-bundle .bundle-inner-item{display:flex;justify-content:space-between;align-items:center;padding:.4rem 0;font-size:.9em;color:var(--text-color-secondary)}.checkout-cart-item.is-bundle .unit-display{font-style:italic;color:var(--text-color)}.cart-bundle-instance{padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:#0000001a}.cart-bundle-instance-unit-selector{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.cart-bundle-instance details>summary{font-size:.85rem;font-weight:500;cursor:pointer;margin-top:.5rem}.checkout-accordion>summary{cursor:pointer;list-style:none;padding:.5rem;position:relative;display:flex;justify-content:space-between;align-items:center}.checkout-accordion>summary::-webkit-details-marker{display:none}.checkout-accordion>summary:after{content:"▸";transform:rotate(0);transition:transform .2s ease}@media(max-width:768px){.modal-header h2{font-size:1.05rem!important}.modal-tabs{width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;padding-bottom:6px!important;margin-bottom:.75rem!important;justify-content:flex-start!important;box-sizing:border-box!important}.glass-tabs{display:inline-flex!important;min-width:max-content!important;width:auto!important}.glass-tabs label{min-width:auto!important;padding:.35rem .65rem!important;white-space:nowrap!important;font-size:.78rem!important}.bundle-form-grid{grid-template-columns:1fr!important;gap:.75rem!important}.checkout-equipment-layout,#modal-container .modal-content.large-modal .checkout-equipment-layout{grid-template-columns:1fr!important;display:flex!important;flex-direction:column!important;height:auto!important;max-height:calc(92vh - 120px)!important;overflow-y:auto!important;gap:.75rem!important}.checkout-inventory-pane,.checkout-cart-pane,#modal-container .modal-content.large-modal .checkout-inventory-pane,#modal-container .modal-content.large-modal .checkout-cart-pane{max-height:280px!important;height:280px!important;flex:none!important}.form-group-row{flex-direction:column!important;gap:.75rem!important}}.checkout-accordion[open]>summary:after{transform:rotate(90deg)}.checkout-accordion .accordion-content-wrapper{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease-in-out}.checkout-accordion[open]>.accordion-content-wrapper{grid-template-rows:1fr}.checkout-accordion.bundle-category-accordion>summary:before,.checkout-accordion.bundle-subcategory-accordion>summary:before{display:none}.checkout-accordion .accordion-content-wrapper>div{overflow:hidden;padding-left:1rem}.bundle-subcategory-accordion{margin-left:.5rem}.bundle-category-accordion>summary{font-weight:500}.form-text{font-size:.85rem;color:var(--text-color-secondary);margin-bottom:.75rem;line-height:1.4}.form-text-sm{font-size:.75rem;color:var(--text-color-secondary);margin-top:.75rem;font-style:italic}.btn-group{display:flex;border-radius:8px;overflow:hidden;border:1px solid var(--border-color)}.btn-group input[type=radio]{display:none}.btn-group label.btn{flex-grow:1;text-align:center;margin:0;border-radius:0;box-shadow:none;background-color:transparent;border:none;color:var(--text-color-secondary);transition:all .2s}.btn-group label.btn:not(:last-child){border-right:1px solid var(--border-color)}.btn-group input[type=radio]:checked+label.btn{background-color:var(--primary-color);color:var(--white);box-shadow:none}.btn-group:hover label.btn:not(:checked){background-color:var(--surface-color-hover)}.disabled-group-wrapper{cursor:not-allowed}.btn-group.disabled{opacity:.6;pointer-events:none}.check-in-list{max-height:93.75vh;overflow-y:auto;padding:.5rem;background:var(--surface-color-inset);border-radius:8px;display:flex;flex-direction:column;gap:.5rem}.check-in-item{padding:1rem;background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;display:flex;justify-content:space-between;align-items:center;gap:1.5rem}.check-in-item-info{flex-grow:1}.check-in-item-info .item-name{font-weight:500;display:block}.check-in-item-info .item-unit{font-size:.85rem;color:var(--text-color-secondary)}.check-in-item-form{display:flex;align-items:center;gap:1rem;flex-shrink:0}.notes-group{margin-bottom:0!important}.check-in-toggle{border:none;background:none;width:200px}.check-in-toggle label.btn{padding:.35rem .5rem;font-size:.8rem;text-transform:none;border:1px solid var(--border-color);background-color:var(--surface-color-inset);color:var(--text-color-secondary);line-height:1.2}.check-in-toggle input[type=radio]:not(:checked)+label.btn:hover{background-color:var(--surface-color);color:var(--text-color)}.check-in-toggle input[type=radio][value=Good]:checked+label.btn{background-color:var(--success-color);border-color:var(--success-color);color:var(--white)}.check-in-toggle input[type=radio][value=Damaged]:checked+label.btn{background-color:var(--pending-color);border-color:var(--pending-color);color:#1f2937}.checkout-confirm-list{max-height:45vh;overflow-y:auto;padding:.75rem;border-radius:8px;background:var(--surface-color-inset);display:flex;flex-direction:column;gap:.5rem}.checkout-confirm-item{display:flex;align-items:center;gap:.75rem;padding:.5rem}.checkout-confirm-item.select-all{border-bottom:1px solid var(--border-color);margin-bottom:.5rem}.checkout-confirm-item input[type=checkbox]{width:1.2rem;height:1.2rem;accent-color:var(--primary-color)}.bundle-details-modal-content .item-details-image{aspect-ratio:1 / 1;max-width:300px;width:100%;margin-left:auto;margin-right:auto;object-fit:contain;max-height:none}.bundle-details-body .detail-row{margin-bottom:1rem}.bundle-details-body .detail-row strong{color:var(--accent-color-text);font-weight:500;display:block;margin-bottom:.5rem}.bundle-details-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;margin-top:1rem}.bundle-details-item{display:flex;align-items:center;gap:1rem;background:var(--surface-color-inset);padding:.75rem;border-radius:8px}.bundle-details-item-image{width:60px;height:60px;flex-shrink:0;background:radial-gradient(circle,#ffffff0d,#fff0 70%),var(--surface-color);border-radius:6px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color)}.bundle-details-item-image img{width:100%;height:100%;object-fit:contain;border-radius:6px}.bundle-details-item-image .image-placeholder{font-size:1.5rem}.bundle-details-item-image .image-placeholder svg{width:32px;height:32px}.bundle-details-item-info{display:flex;align-items:center;gap:.5rem;flex-grow:1;min-width:0}.cert-indicator{font-size:1rem;flex-shrink:0}.cert-indicator.has-cert{color:var(--success-color)}.cert-indicator.needs-cert{color:var(--pending-color)}.unit-assignment-list{max-height:60vh;overflow-y:auto;padding:1rem;background:var(--surface-color-inset);border-radius:8px;display:flex;flex-direction:column;gap:1.5rem}.unit-assignment-item{padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.unit-assignment-item:last-child{border-bottom:none}.unit-assignment-item h4{margin-bottom:.75rem;font-weight:500}#producer-list{background:var(--surface-color-inset);border-radius:8px;padding:.5rem;min-height:50px;display:flex;flex-direction:column;gap:.5rem}.selected-producer-item{display:flex;justify-content:space-between;align-items:center;background:var(--surface-color);padding:.5rem 1rem;border-radius:6px}.selected-producer-item .remove-producer-btn{font-size:1.25rem;line-height:1}#modal-container .modal-content.large-modal.product-overview-modal-content{width:fit-content!important;min-width:min(400px,90vw)!important;max-width:800px!important;height:auto!important;max-height:95vh!important;margin:0 auto;padding:1.25rem 1.5rem!important}#modal-container .modal-content.large-modal.bundle-details-modal-content{width:fit-content!important;min-width:min(600px,90vw)!important;max-width:950px!important;height:auto!important;max-height:95vh!important;margin:0 auto;padding:1.25rem 1.5rem!important}.bundle-editor-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;height:50vh;min-height:300px;overflow:hidden;margin-top:1rem}.modal-loading-progress{display:flex;flex-direction:column;gap:1rem;padding:2rem;align-items:flex-start;text-align:left}.progress-step{font-weight:500;color:var(--text-color-secondary);opacity:.5;position:relative;padding-left:30px;transition:all .3s ease}.progress-step:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;border:2px solid var(--text-color-secondary);background-color:transparent;transition:all .3s ease}.progress-step.active{opacity:1;color:var(--text-color)}.progress-step.active:before{background-color:var(--primary-color);border-color:var(--primary-color);content:"✓";color:#fff;font-size:12px;text-align:center;line-height:20px}.progress-step.failed{opacity:1;color:var(--danger-color)}.progress-step.failed:before{background-color:var(--danger-color);border-color:var(--danger-color);content:"×";color:#fff;font-size:14px;font-weight:700;text-align:center;line-height:20px}.modal-form-group.modal-form-group--horizontal{display:grid;grid-template-columns:80px 1fr;align-items:center;gap:1rem}.modal-form-group.modal-form-group--horizontal label{margin-bottom:0;text-align:right}.modal-form-group.modal-form-group--horizontal input{background-color:var(--surface-color-inset, #0f172a);color:var(--text-color, #f8fafc);border:1px solid var(--border-color, rgba(255, 255, 255, .12))}.modal-form-group.modal-form-group--horizontal input:focus{background-color:#0f172ad9;color:var(--text-color, #f8fafc)}.custom-tooltip{position:fixed;display:none;background-color:var(--background-color);color:var(--text-color);padding:.5rem 1rem;border-radius:8px;border:1px solid var(--border-color);box-shadow:var(--shadow-interactive);font-size:.85rem;line-height:1.4;white-space:pre-wrap;max-width:300px;z-index:2000;pointer-events:none;transition:opacity .2s ease}.custom-tooltip.has-image{max-width:216px;padding:.5rem}[data-tooltip]{cursor:help}.bundle-item-details{display:flex;flex-direction:column;gap:.5rem;flex-grow:1}.item-quantity-control{flex-shrink:0}.bundle-item-quantity-input{width:60px;padding:.5rem;text-align:center;border:1px solid var(--border-color);background-color:var(--surface-color-inset);color:var(--text-color);border-radius:6px;font-size:.9rem;-moz-appearance:textfield}.bundle-item-quantity-input::-webkit-outer-spin-button,.bundle-item-quantity-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.core-component-toggle{display:flex;align-items:center;gap:.5rem}.core-component-toggle input[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--surface-color);margin:0;font:inherit;color:currentColor;width:1.15em;height:1.15em;border:1px solid var(--border-color);border-radius:50%;transform:translateY(-.075em);display:grid;place-content:center;cursor:pointer}.core-component-toggle input[type=radio]:before{content:"";width:.65em;height:.65em;border-radius:50%;transform:scale(0);transition:.12s transform ease-in-out;box-shadow:inset 1em 1em var(--primary-color)}.core-component-toggle input[type=radio]:checked:before{transform:scale(1)}.core-component-toggle input[type=radio]:checked{border-color:var(--primary-color)}.core-component-toggle label{font-size:.8rem;color:var(--text-color-secondary);margin-bottom:0;cursor:pointer}.form-group-row>.modal-form-group .form-text-sm{margin-top:.25rem;margin-bottom:0;font-size:.75rem;font-style:italic}#cropper-modal-content{z-index:1001}.add-item-controls{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.quantity-input{-moz-appearance:textfield;padding:.5rem;text-align:center;border:1px solid var(--border-color);background-color:var(--surface-color-inset);color:var(--text-color);border-radius:6px;font-size:.9rem;width:60px}.quantity-input:focus{outline:none;border-color:var(--primary-color)}.quantity-input::-webkit-outer-spin-button,.quantity-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.add-item-controls .btn-sm{padding:.5rem .75rem}.checkout-cart-item .item-quantity{font-size:.9rem;color:var(--text-color-secondary);margin-left:.5rem;font-weight:500}.image-selector-controls{margin-bottom:1rem}.image-selector-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem;max-height:60vh;overflow-y:auto;padding:1rem;background:var(--surface-color-inset);border-radius:8px}.image-selector-item{position:relative;aspect-ratio:1 / 1;border-radius:8px;overflow:hidden;cursor:pointer;border:3px solid transparent;transition:border-color .2s,transform .2s}.image-selector-item:hover{transform:scale(1.05)}.image-selector-item.selected{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color);transform:scale(1.05)}.image-selector-item img{width:100%;height:100%;object-fit:cover}.image-selector-item span{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);color:#fff;font-size:.75rem;padding:1rem .5rem .5rem;text-align:center;-webkit-box-orient:vertical;display:-webkit-box;-webkit-line-clamp:2;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.student-context-card{background:var(--surface-color-inset);border:1px solid var(--border-color);border-radius:12px;padding:1rem;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.student-context-info{display:flex;align-items:center;gap:1rem}.student-context-info h3{margin:0;font-size:1.1rem}.student-context-info p{margin:0;font-size:.85rem;color:var(--text-color-secondary)}.quick-dates{display:flex;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.btn-chip{background:var(--surface-color);border:1px solid var(--border-color);border-radius:20px;padding:.25rem .75rem;font-size:.75rem;color:var(--text-color);cursor:pointer;transition:all .2s}.btn-chip:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.loading-overlay{position:fixed;top:0;left:0;width:100vw;height:100%;height:100dvh;background-color:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.loading-overlay.visible{opacity:1;visibility:visible}.loading-spinner-large{width:50px;height:50px;border:4px solid rgba(255,255,255,.1);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.loading-message{color:var(--white);font-size:1.1rem;font-weight:500;text-align:center;max-width:80%}.modal-hero-container{position:relative;width:auto;border-radius:var(--radius-lg) var(--radius-lg) 0 0;overflow:hidden;background:var(--surface-color-inset);display:flex;justify-content:center;align-items:center;padding:.75rem 1rem;margin:-1.25rem -1.5rem .75rem;border-bottom:1px solid var(--glass-border-top)}.modal-hero-glass-bg{position:absolute;top:0;right:0;bottom:0;left:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(to bottom,#ffffff0d,#0003);z-index:1}.modal-hero-image-wrapper{position:relative;z-index:2;max-width:80%;max-height:140px;display:flex;justify-content:center;align-items:center;background:#0f172a99;border:1px solid var(--glass-border-top);border-radius:12px;padding:.35rem;box-shadow:0 4px 16px #00000040}.modal-hero-image-wrapper img{max-height:125px;width:auto;object-fit:contain;border-radius:8px;transition:transform .3s ease}.modal-hero-image-wrapper:hover img{transform:scale(1.03)}.modal-hero-title{position:absolute;bottom:.5rem;left:0;right:0;text-align:center;color:var(--text-color-secondary);font-size:.9rem;z-index:3}.cert-status-banner{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-weight:500;border:1px solid var(--border-color)}.cert-status-success{background:#2e7d3226;border-color:#2e7d32;color:#a5d6a7}.cert-status-success .cert-icon{background:#2e7d32;color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cert-status-warning{background:#f59e0b1f;border-color:#f59e0b59;color:#fbbf24}.cert-status-warning .cert-icon{background:#f59e0b;color:#1e1e24;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.bundle-contents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:1rem;margin-top:1rem;max-width:860px;margin-inline:auto}.bundle-grid-item{background:var(--surface-color-inset);border:1px solid var(--border-color);border-radius:12px;padding:.75rem;display:flex;flex-direction:column;position:relative;cursor:default;transition:transform .2s,background-color .2s}.bundle-grid-item:hover{background:var(--surface-color-hover);transform:translateY(-2px)}.bundle-grid-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.bundle-grid-item-image{width:48px;height:48px;border-radius:6px;background:#fff;padding:4px;display:flex;align-items:center;justify-content:center}.bundle-grid-item-image img{max-width:100%;max-height:100%;object-fit:contain}.bundle-item-cert-indicator{width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px}.bundle-item-cert-indicator.success{background:#2e7d32;color:#fff}.bundle-item-cert-indicator.warning{background:#f59e0b;color:#fff}.bundle-grid-item-title{font-size:.8rem;line-height:1.2;color:var(--text-color);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.modal-action-bar{display:flex;align-items:center;gap:1rem}.styled-quantity-selector{display:flex;align-items:center;background:var(--surface-color-inset);border:1px solid var(--border-color);border-radius:8px;overflow:hidden;flex-shrink:0}.qty-btn{background:transparent;border:none;color:var(--text-color);padding:.5rem .75rem;cursor:pointer;font-size:1.2rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.qty-btn:hover{background:var(--surface-color-hover)}.qty-btn:disabled{opacity:.5;cursor:not-allowed}.styled-qty-input{width:40px;text-align:center;background:transparent;border:none;border-left:1px solid var(--border-color);border-right:1px solid var(--border-color);color:var(--text-color);font-size:1rem;padding:.5rem 0;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.styled-qty-input::-webkit-outer-spin-button,.styled-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.notifications-modal-content{max-width:500px;padding:0;overflow:hidden;display:flex;flex-direction:column}.notifications-modal-content .modal-header{padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);background:var(--surface-color)}.notifications-modal-content .modal-body{padding:0;max-height:60vh;overflow-y:auto}.notification-item{display:flex;align-items:flex-start;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);position:relative;background:var(--background-color);transition:background-color .2s ease}.notification-item:last-child{border-bottom:none}.notification-item.unread{background:var(--surface-color-inset)}.notification-icon{width:32px;height:32px;border-radius:50%;background:var(--primary-color-alpha-20);color:var(--primary-color);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-right:1rem}.notification-icon svg{width:18px;height:18px}.notification-content{flex-grow:1}.notification-title{font-weight:600;font-size:.95rem;margin-bottom:.25rem;color:var(--text-color)}.notification-message{font-size:.85rem;color:var(--text-color-secondary);margin-bottom:.5rem;line-height:1.4}.notification-time{font-size:.75rem;color:var(--text-color-secondary);opacity:.8}.unread-dot{width:8px;height:8px;border-radius:50%;background-color:var(--primary-color);margin-left:.5rem;margin-top:.5rem;flex-shrink:0}@media(min-width:1280px){#modal-container:not([hidden]){width:calc(100vw / var(--zoom-factor, .8))!important;height:calc(100dvh / var(--zoom-factor, .8))!important;max-width:calc(100vw / var(--zoom-factor, .8))!important;max-height:calc(100dvh / var(--zoom-factor, .8))!important}#modal-container .modal-content{max-height:calc(92vh / var(--zoom-factor, .8))!important}#modal-container .modal-content.large-modal{height:calc(90vh / var(--zoom-factor, .8))!important;max-height:calc(90vh / var(--zoom-factor, .8))!important;width:calc(94vw / var(--zoom-factor, .8))!important;max-width:calc(1700px / var(--zoom-factor, .8))!important;display:flex;flex-direction:column;overflow:hidden!important}#modal-container .modal-content.checkout-modal-content{height:calc(90vh / var(--zoom-factor, .8))!important;max-height:calc(90vh / var(--zoom-factor, .8))!important;width:calc(94vw / var(--zoom-factor, .8))!important;max-width:calc(1750px / var(--zoom-factor, .8))!important;padding:1rem 1.25rem .75rem!important;display:flex;flex-direction:column;overflow:hidden!important}#modal-container .modal-content.checkout-modal-content .modal-body{flex:1 1 auto;overflow:hidden!important;display:flex;flex-direction:column;min-height:0;padding-bottom:.25rem!important}#modal-container .modal-content.large-modal .modal-body{flex:1 1 auto;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;min-height:0}.loading-overlay{width:calc(100vw / var(--zoom-factor, .8))!important;height:calc(100dvh / var(--zoom-factor, .8))!important}}#modal-container .modal-content.checkout-modal-content .modal-tab-content{display:none;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}#modal-container .modal-content.checkout-modal-content .modal-tab-content.active{display:flex!important}#modal-container .modal-content.checkout-modal-content .modal-tab-content[data-tab-content=details]{overflow-y:auto!important;padding-right:.5rem}#modal-container .modal-content.large-modal #bundle-form{flex:1 1 auto;display:flex;flex-direction:column;overflow:hidden;min-height:0;margin-bottom:0}#modal-container .modal-content.large-modal .modal-tab-content.active{display:flex!important;flex-direction:column;flex:1;min-height:0;overflow:hidden}#modal-container .modal-content.large-modal .modal-tab-content[data-tab-content=general].active{display:block!important;flex:1;min-height:0;overflow-y:auto!important;padding-right:.5rem}.room-modal-form{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}#modal-container .modal-content.large-modal .checkout-equipment-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;flex:1 1 auto;min-height:0;height:100%!important;max-height:none!important;overflow:hidden;margin-top:.5rem}#modal-container .modal-content.large-modal .checkout-inventory-pane,#modal-container .modal-content.large-modal .checkout-cart-pane{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;overflow:hidden}#modal-container .modal-content.large-modal .checkout-inventory-list,#modal-container .modal-content.large-modal .checkout-cart-list{flex:1 1 auto;min-height:0;max-height:100%;overflow-y:auto!important;padding:.5rem;background:var(--surface-color-inset);border-radius:8px;-webkit-overflow-scrolling:touch}#modal-container .modal-content.large-modal #exceptions-container{flex:1;min-height:0;max-height:none!important}.print-batch-item{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:.75rem!important;padding:.65rem .75rem!important}@media(max-width:768px),(pointer:coarse)and (max-width:1024px){#modal-container:not([hidden]){padding:max(8px,env(safe-area-inset-top,8px)) 8px max(8px,env(safe-area-inset-bottom,8px)) 8px!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;width:100vw!important;max-width:100vw!important;height:100%!important;height:100dvh!important;max-height:100dvh!important;overflow:hidden!important}#modal-container .modal-content,#modal-container .modal-content.large-modal,#modal-container .modal-content.product-overview-modal-content,#modal-container .modal-content.bundle-details-modal-content,#modal-container .modal-content.variant-overview-modal,.mobile-manager-body #modal-container .modal-content{width:100%!important;max-width:min(100vw - 16px,520px)!important;min-width:0!important;height:auto!important;max-height:calc(100dvh - max(16px,env(safe-area-inset-top,8px) + env(safe-area-inset-bottom,8px) + 16px))!important;display:flex!important;flex-direction:column!important;padding:.85rem!important;border-radius:var(--radius-lg, 16px)!important;margin:auto 0!important;box-sizing:border-box!important;overflow:hidden!important}#modal-container .modal-content .modal-header{flex-shrink:0!important;padding-bottom:.5rem!important;margin-bottom:.25rem!important}#modal-container .modal-content .modal-header h2{font-size:1.05rem!important;line-height:1.3!important;word-break:break-word!important}#modal-container .modal-content .modal-body,#modal-container .modal-content.large-modal .modal-body,#modal-container .modal-content.product-overview-modal-content .modal-body,#modal-container .modal-content.bundle-details-modal-content .modal-body{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;padding:.25rem .15rem .5rem!important;box-sizing:border-box!important;width:100%!important;max-width:100%!important}.modal-tab-content{width:100%!important;max-width:100%!important;box-sizing:border-box!important}.modal-tab-content.active{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important}.modal-content .glass-tabs{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding:3px 2px 6px!important;gap:.35rem!important;scrollbar-width:none!important}.modal-content .glass-tabs::-webkit-scrollbar{display:none!important}.modal-content .glass-tabs label{white-space:nowrap!important;flex-shrink:0!important;font-size:.8rem!important;padding:.35rem .65rem!important}.bundle-form-grid,.form-group-row,.checkout-equipment-layout{display:flex!important;flex-direction:column!important;gap:.65rem!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important}.form-group-row>div,.bundle-form-grid>div{width:100%!important;max-width:100%!important;min-width:0!important;flex:none!important;box-sizing:border-box!important}.image-upload-wrapper{display:flex!important;flex-direction:column!important;align-items:center!important;width:100%!important;max-width:100%!important}.modal-thumbnail-preview{max-width:160px!important;max-height:160px!important;margin-bottom:.5rem!important}.unit-metadata-row,.unit-row{display:flex!important;flex-direction:column!important;gap:.45rem!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding:.65rem!important;background:var(--surface-color-inset, rgba(15, 23, 42, .45))!important;border:1px solid var(--border-color, rgba(255, 255, 255, .08))!important;border-radius:8px!important;margin-bottom:.65rem!important}.unit-metadata-row input,.unit-metadata-row select,.unit-row input,.unit-row select{width:100%!important;min-width:0!important;max-width:100%!important;flex:none!important;box-sizing:border-box!important;font-size:.85rem!important;padding:.45rem .55rem!important}.unit-metadata-row .delete-unit-row-btn,.unit-row .delete-unit-row-btn{width:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:.45rem!important;margin-top:.25rem!important}.bundle-unit-row{display:flex!important;flex-direction:column!important;gap:.5rem!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;padding:.75rem!important;margin-bottom:.65rem!important}.bundle-unit-row .bundle-unit-room-select,.bundle-unit-row .bundle-unit-location-input,.bundle-unit-row .bundle-unit-slot-select{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important}.unit-pills-container{padding:.5rem!important;gap:.35rem!important;width:100%!important;box-sizing:border-box!important}.checkout-inventory-pane,.checkout-cart-pane{width:100%!important;max-height:220px!important;flex:none!important}#modal-container .modal-content .modal-footer,#modal-container .modal-content.large-modal .modal-footer,#modal-container .modal-content.product-overview-modal-content .modal-footer,#modal-container .modal-content.bundle-details-modal-content .modal-footer{flex-shrink:0!important;padding-top:.65rem!important;padding-bottom:0!important;margin-top:.4rem!important;border-top:1px solid var(--border-color)!important;background:var(--surface-color)!important;display:flex!important;align-items:center!important;width:100%!important;box-sizing:border-box!important;gap:.5rem!important;flex-wrap:nowrap!important}#modal-container .modal-content .modal-footer button,#modal-container .modal-content .modal-footer .btn{flex:1 1 auto!important;min-height:40px!important;font-size:.85rem!important;padding:.4rem .65rem!important;display:flex!important;align-items:center!important;justify-content:center!important}.modal-action-bar{display:flex!important;flex-direction:row!important;align-items:center!important;gap:.5rem!important;width:100%!important}.modal-action-bar .styled-quantity-selector{flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;height:40px!important}.modal-action-bar .styled-quantity-selector .qty-btn{flex:0 0 36px!important;width:36px!important;height:36px!important;min-height:0!important;padding:0!important}.modal-action-bar .styled-quantity-selector .styled-qty-input{width:34px!important;font-size:.9rem!important}.modal-action-bar .add-to-cart-btn,.modal-action-bar .add-bundle-cart-btn-modal,.modal-action-bar .btn-add-cart{flex:1 1 auto!important;min-width:0!important;min-height:40px!important;height:40px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0 .75rem!important;font-size:.85rem!important}.glass-tabs{overflow-x:auto!important;-webkit-overflow-scrolling:touch;justify-content:flex-start!important;padding-bottom:4px}}#print-sticker-sheet-container{display:none}@media print{@page{size:8.5in 11in;margin:0!important}html,body{margin:0!important;padding:0!important;width:8.5in!important;height:11in!important;background:#fff!important}body>*:not(#print-sticker-sheet-container){display:none!important}#print-sticker-sheet-container{display:grid!important;position:absolute;left:0!important;top:0!important;width:8.5in!important;height:11in!important;padding:.5in .46875in!important;grid-template-columns:repeat(4,1.75in)!important;grid-template-rows:repeat(8,1.25in)!important;column-gap:.1875in!important;row-gap:0in!important;background:#fff!important;color:#000!important;font-family:Arial,Helvetica,sans-serif!important;box-sizing:border-box!important;z-index:99999;page-break-after:always;break-after:page}.sticker-cell{width:1.75in!important;height:1.25in!important;border:none!important;padding:2px 4px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:space-between!important;text-align:center!important;overflow:hidden!important;box-sizing:border-box!important;background:#fff!important}.sticker-cell.blank{border:none!important;background:transparent!important}.sticker-barcode{width:100%!important;max-width:1.68in!important;height:.8in!important;object-fit:contain!important;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;flex-shrink:0;margin:0!important}.sticker-qr{width:.88in!important;height:.88in!important;object-fit:contain;flex-shrink:0;margin:1px 0}.sticker-title{font-size:7.2pt!important;font-weight:700!important;color:#000!important;line-height:1.1;max-height:2.2em;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;text-align:center!important;width:100%;margin-bottom:0}.sticker-tag{font-size:7.2pt!important;font-weight:700!important;color:#111827!important;font-family:monospace,sans-serif;text-align:center!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;margin-top:0}}.category-skeleton,.announcement-item-skeleton,.reservation-card-skeleton,.settings-section-skeleton,.class-assignment-container-skeleton{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:1.5rem;border-radius:12px;margin-bottom:1.5rem;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:1rem}.skeleton{background:linear-gradient(90deg,#ffffff14 25%,#ffffff1f,#ffffff14 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite linear;border-radius:6px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-header{height:2rem;width:40%;margin-bottom:.5rem}.skeleton-line{height:1.2rem;width:80%}.skeleton-line-lg{height:1.5rem;width:60%}.skeleton-line-sm{height:.9rem;width:60%}.skeleton-text{height:.9rem;width:100%}.skeleton-image{height:150px;width:100%}.item-skeleton{display:flex;gap:1rem;align-items:center}.item-skeleton .skeleton-image{width:60px;height:60px;flex-shrink:0}.item-skeleton-info{flex-grow:1;display:flex;flex-direction:column;gap:.5rem}.settings-section-skeleton .form-group-skeleton{display:flex;flex-direction:column;gap:.5rem}.settings-section-skeleton .skeleton-label{height:.8rem;width:30%}.settings-section-skeleton .skeleton-input{height:2.5rem;width:100%}.class-assignment-container-skeleton .skeleton-summary{height:2.5rem;width:50%}.class-assignment-container-skeleton .skeleton-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.class-assignment-container-skeleton .skeleton-card{height:4rem}.data-table-container{width:100%;overflow-x:auto;background:var(--surface-color);box-shadow:var(--neumorphic-shadow-inset);border:none;border-radius:10px;padding:.5rem}.data-table{width:100%;border-collapse:collapse;table-layout:fixed;color:var(--text-color)}.data-table-header{border-bottom:2px solid var(--border-color)}.data-table-header-cell{position:relative;padding:.75rem 1rem;text-align:left;font-weight:500;font-size:.85rem;color:var(--text-color-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase}.data-table-header-cell.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s}.data-table-header-cell.sortable:hover{color:var(--text-color)}.sort-indicator{display:inline-flex;vertical-align:middle;margin-left:.5rem;opacity:.6}.data-table-resizer{position:absolute;top:0;right:0;width:8px;height:100%;cursor:col-resize;-webkit-user-select:none;user-select:none;z-index:10}.data-table-resizer:hover,.resizing{background:var(--primary-color);opacity:.5}.data-table-row{border-bottom:1px solid var(--border-color);transition:background-color .2s ease}.data-table-row:last-child{border-bottom:none}.data-table-row:hover{background-color:#ffffff08}.data-table-cell{padding:.75rem 1rem;vertical-align:middle;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sticky-col{position:sticky;z-index:2;background-color:var(--surface-color)}th.sticky-col:nth-child(1),td.sticky-col:nth-child(1){left:0;z-index:3;border-right:1px solid var(--border-color)}th.sticky-col:nth-child(2),td.sticky-col:nth-child(2){left:45px;z-index:2;border-right:2px solid var(--border-color)}th.sticky-col{z-index:15!important;background-color:var(--surface-color)}tr:hover .sticky-col{background-color:var(--surface-color-inset);background-color:#1e293b;background-color:color-mix(in srgb,var(--surface-color),white 2%)}.spreadsheet-table.compact-mode .data-table-cell,.spreadsheet-table.compact-mode th{padding:.25rem .5rem;font-size:.85rem}.spreadsheet-table.compact-mode .data-table-header-cell{padding:.25rem .5rem}.data-table-cell.selected{border:2px solid var(--primary-color)!important;position:relative;z-index:1}.data-table-cell.selected.sticky-col{z-index:5!important}.data-table-cell.editing{padding:0!important}.spreadsheet-cell-editor{outline:none;padding:.75rem 1rem}.spreadsheet-table.compact-mode .spreadsheet-cell-editor{padding:.25rem .5rem}.drag-handle{position:absolute;bottom:-4px;right:-4px;width:8px;height:8px;background:var(--primary-color);border:1px solid var(--surface-color);cursor:crosshair;z-index:10}.data-table-cell.drag-selected{background-color:rgba(var(--primary-color-rgb),.1);border:1px dashed var(--primary-color)}td[data-col-id=name]{overflow:visible!important}.spreadsheet-name-cell{display:flex;align-items:center;gap:.75rem;position:relative;width:100%}.spreadsheet-item-name{flex-grow:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spreadsheet-thumbnail-container{position:relative;width:32px;height:32px;border-radius:4px;overflow:visible;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#0000000d}.spreadsheet-thumbnail{width:100%;height:100%;object-fit:cover;border-radius:4px;cursor:pointer}.spreadsheet-thumbnail-fallback{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.spreadsheet-thumbnail-fallback .image-placeholder{width:100%!important;height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:4px!important}.spreadsheet-thumbnail-hover-preview{position:absolute;left:calc(100% + 8px);top:50%;transform:translateY(-50%);z-index:99999;width:160px;height:160px;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--box-shadow-lg);display:none;overflow:hidden;pointer-events:none}.spreadsheet-thumbnail-hover-preview img{width:100%;height:100%;object-fit:cover}.spreadsheet-thumbnail-container:hover .spreadsheet-thumbnail-hover-preview{display:block}.data-table-header-cell[draggable=true]{cursor:grab;-webkit-user-select:none;user-select:none}.data-table-header-cell[draggable=true]:active{cursor:grabbing}.data-table-header-cell.dragging{opacity:.4;border:2px dashed var(--primary-color, #3b82f6)!important;cursor:grabbing}.data-table-header-cell.drag-over{border-left:3px solid var(--primary-color, #3b82f6)!important;background-color:#3b82f626!important}.spreadsheet-v2-container{width:100%;height:100%;overflow:auto;background:var(--surface-color, #1e293b);border:1px solid var(--border-color, #1e293b);border-radius:8px;box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none}.spreadsheet-v2-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;background:var(--surface-color, #1e293b);font-family:inherit;font-size:.875rem;color:var(--text-color, #f8fafc)}.spreadsheet-v2-table th{background:var(--surface-color, #1e293b);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-color-secondary, #94a3b8);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--border-color, #334155);border-right:1px solid var(--border-color, #334155);height:38px;box-sizing:border-box;padding:0!important;vertical-align:middle}.spreadsheet-v2-table th .header-content{display:flex;align-items:center;justify-content:space-between;width:100%;height:100%;padding:0 10px;box-sizing:border-box;cursor:pointer}.spreadsheet-v2-table th .header-content:hover{color:var(--text-color, #ffffff);background:#ffffff08}.spreadsheet-v2-table .resizer{position:absolute;right:-6px;top:0;height:100%;width:12px;background:transparent;cursor:col-resize;-webkit-user-select:none;user-select:none;touch-action:none;z-index:35}.spreadsheet-v2-table .resizer:after{content:"";position:absolute;right:5px;top:0;bottom:0;width:2px;background:transparent;transition:background .15s ease}.spreadsheet-v2-table .resizer:hover:after,.spreadsheet-v2-table .resizer.isResizing:after{background:var(--primary-color, #3b82f6);width:3px}.spreadsheet-v2-table td{padding:0 10px!important;border-bottom:1px solid var(--border-color, #334155);border-right:1px solid var(--border-color, #334155);height:40px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box;vertical-align:middle}.spreadsheet-v2-table tbody tr{transition:background-color .15s ease}.spreadsheet-v2-table tbody tr:hover{background-color:#ffffff0a!important}.spreadsheet-v2-table tbody tr.selected{background-color:#3b82f61f!important}.spreadsheet-v2-table .sticky-col{position:sticky;z-index:15;background:var(--surface-color, #1e293b)}.spreadsheet-v2-table th:first-child,.spreadsheet-v2-table td:first-child{left:0;z-index:30;text-align:center;background:var(--surface-color, #1e293b)}.spreadsheet-name-cell{display:flex;align-items:center;gap:.6rem;height:100%}.spreadsheet-thumbnail-container{width:28px;height:28px;border-radius:4px;overflow:hidden;flex-shrink:0;background:#ffffff0f;display:flex;align-items:center;justify-content:center}.spreadsheet-thumbnail{width:100%;height:100%;object-fit:cover}.spreadsheet-v2-table tr[data-depth="1"]{background-color:#00000026!important;color:var(--text-color-secondary, #cbd5e1)}.spreadsheet-v2-table tr[data-depth="1"] .spreadsheet-breadcrumb{font-size:.75rem;font-weight:500;color:#60a5fa;margin-right:.25rem;opacity:.9}.spreadsheet-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:600}.spreadsheet-badge-yes{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.3)}.spreadsheet-badge-no{background:#94a3b826;color:#94a3b8;border:1px solid rgba(148,163,184,.3)}.empty-dash{color:var(--text-color-secondary, #94a3b8);opacity:.45;-webkit-user-select:none;user-select:none;font-weight:400}.datetime-picker-card{background:var(--surface-color-inset);border:1px solid var(--border-color);border-radius:12px;padding:1rem;width:100%;max-width:600px;box-shadow:0 4px 12px #0000001a;font-size:.9rem}.reservation-sidebar .datetime-picker-card{max-width:100%;padding:0;border:none;background:none;box-shadow:none}.dt-content{display:flex;gap:1rem}.dt-calendar-pane{flex:1;min-width:280px}.dt-time-pane{flex:0 0 120px;border-left:1px solid var(--border-color);padding-left:1rem}.datetime-picker-card.dt-mode-date-only .dt-time-pane,.datetime-picker-card.dt-mode-date-only .dt-footer{display:none}.reservation-sidebar .datetime-picker-card.dt-mode-date-only .dt-content{flex-direction:column}.datetime-picker-card.dt-mode-time-only .dt-calendar-pane{display:none}.dt-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.dt-nav-btn{background:none;border:none;color:var(--text-color-secondary);cursor:pointer;font-size:1.2rem;padding:.2rem .5rem;border-radius:4px}.dt-nav-btn:hover{color:var(--text-color);background-color:var(--surface-color)}.dt-month-year{font-weight:500}.dt-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;justify-items:center}.dt-weekday{font-size:.75rem;font-weight:500;color:var(--text-color-secondary);width:36px;height:36px;display:flex;align-items:center;justify-content:center}.dt-day{background:transparent;border:none;color:var(--text-color);cursor:pointer;border-radius:50%;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;transition:background-color .2s,color .2s,border-color .2s;border:1px solid transparent}.dt-day:not(.empty):hover{background-color:var(--surface-color)}.dt-day.today{border-color:var(--primary-color);color:var(--accent-color-text)}.dt-day.selected{background-color:var(--primary-color);color:var(--white);font-weight:500}.dt-day.disabled{color:var(--text-color-secondary);opacity:.4;cursor:not-allowed;background-color:transparent!important}.dt-time-header{font-size:.8rem;font-weight:500;color:var(--text-color-secondary);margin-bottom:.5rem;display:flex;justify-content:space-between;padding:0 .5rem}.dt-time-slots{height:250px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.dt-time-slot-btn{width:100%;padding:.5rem;background:transparent;border:none;border-radius:6px;color:var(--text-color);cursor:pointer;text-align:center;transition:background-color .2s}.dt-time-slot-btn:hover{background-color:var(--surface-color)}.dt-time-slot-btn.selected{background-color:var(--primary-color);color:var(--white);font-weight:500}.dt-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color);text-align:center;font-size:.85rem;font-weight:500;color:var(--text-color-secondary)}.time-wheel-container{height:280px;width:100%;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 20%,black 80%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,black 20%,black 80%,transparent 100%);flex-grow:1}.time-wheel-scroller{height:100%;overflow-y:scroll;scroll-snap-type:y mandatory;scrollbar-width:none;-ms-overflow-style:none}.time-wheel-scroller::-webkit-scrollbar{display:none}.time-wheel-item{height:40px;display:flex;align-items:center;justify-content:center;scroll-snap-align:center;font-size:1.1rem;color:var(--text-color-secondary);transition:color .2s,font-size .2s;cursor:pointer}.time-wheel-selector{position:absolute;top:50%;left:10px;right:10px;transform:translateY(-50%);height:40px;background:#0033851a;border-top:1px solid var(--primary-color);border-bottom:1px solid var(--primary-color);border-radius:6px;pointer-events:none;z-index:-1}.time-wheel-scroller:before,.time-wheel-scroller:after{content:"";display:block;height:120px}.status-badge{display:inline-flex;align-items:center;border-radius:9999px;background-color:var(--surface-color-inset);font-size:.75rem;font-weight:500;overflow:hidden;border:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.5px}.badge-part{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .75rem;white-space:nowrap}.badge-part svg{width:14px;height:14px;flex-shrink:0}.badge-divider{width:1px;align-self:stretch;background-color:var(--border-color)}.badge-left{color:var(--text-color)}.badge-right{color:var(--text-color-secondary);background-color:#0003}.status-badge.success .badge-left{color:var(--success-color)}.status-badge.warning .badge-left{color:var(--pending-color)}.status-badge.error .badge-left{color:var(--danger-color)}.inventory-badge{display:inline-flex;align-items:center;justify-content:center;padding:.2rem .5rem;font-size:.75rem;font-weight:500;border-radius:9999px;line-height:1;text-transform:uppercase;letter-spacing:.5px}.inventory-badge.badge-success{background-color:#10b98126;color:var(--success-color);border:1px solid rgba(16,185,129,.3)}.inventory-badge.badge-secondary{background-color:#94a3b826;color:var(--text-color-secondary);border:1px solid rgba(148,163,184,.3)}.inventory-badge.badge-warning{background-color:#f59e0b26;color:var(--pending-color);border:1px solid rgba(245,158,11,.3)}.product-card-trigger{border-radius:var(--radius-lg);overflow:hidden;background:#ffffff0d;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);cursor:pointer;transition:transform .1s linear,box-shadow .3s ease,border-color .3s ease;transform-style:preserve-3d;will-change:transform;border:1px solid var(--glass-border-top);box-shadow:var(--shadow-ambient);position:relative;display:flex;flex-direction:column;backface-visibility:hidden}.product-card-trigger:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom right,rgba(255,255,255,.15),rgba(255,255,255,.03),transparent);pointer-events:none;border-radius:16px;z-index:1}.product-card-trigger:hover{box-shadow:var(--shadow-interactive);border-color:#ffffff4d}.product-card-trigger[aria-disabled=true]{opacity:.6;cursor:not-allowed;transform:none;border-color:var(--border-color)}.product-card-trigger.is-certification-locked{transform:none;border-color:var(--border-color);cursor:pointer}.product-card-trigger.is-certification-locked:hover{box-shadow:none}.product-card-trigger .glare{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:16px;background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),rgba(255,255,255,.2),transparent 40%);opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:3}.product-card-trigger:hover .glare{opacity:1}.product-card-image-wrapper{position:relative;aspect-ratio:1 / 1;background:radial-gradient(circle,#ffffff1a,#fff0 70%),var(--background-color);display:flex;align-items:center;justify-content:center}.product-card-image-wrapper:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.6),transparent 50%);pointer-events:none}.product-card-image-wrapper img{width:100%;height:100%;object-fit:contain}.unavailable-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#00000080;color:var(--white);display:flex;align-items:center;justify-content:center;font-weight:500;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.product-card-info{padding:.85rem 1rem .95rem;position:relative;z-index:2;margin-top:auto;display:flex;flex-direction:column;gap:.35rem}.product-card-title{font-weight:500;color:var(--white);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;white-space:normal;min-height:2.6em}.product-card-availability{font-size:.78rem;font-weight:500;color:var(--text-color-secondary, #94a3b8);opacity:1;display:inline-flex;align-items:center;gap:.35rem;transition:color .2s ease}.product-card-trigger:hover .product-card-availability{color:var(--primary-color-light, #60a5fa)}.product-overview-modal-content .modal-header{background:transparent;border-bottom:1px solid var(--border-color)}.product-overview-modal-layout{display:flex;gap:1.5rem;padding:0}.product-overview-image-pane{flex:1 1 45%;background:radial-gradient(circle,#ffffff0d,#fff0 70%),var(--surface-color-inset);border-radius:12px;padding:1rem;display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1;border:1px solid var(--border-color)}.product-overview-image-pane img{max-width:100%;max-height:100%;object-fit:contain}.product-overview-details-pane{flex:1 1 55%;display:flex;flex-direction:column}.product-overview-details-pane h3{font-size:1.75rem;font-weight:500;margin-bottom:1rem}.product-overview-interactive-section{background:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;padding:1rem 1.25rem;margin-bottom:1rem;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);display:flex;flex-direction:column;gap:1rem}.product-overview-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem}.product-overview-interactive-section .product-overview-details-grid{margin-bottom:0}.detail-item{padding:.5rem .75rem;background:var(--surface-color-inset);border-radius:8px;border:1px solid var(--border-color)}.detail-item span{font-size:.8rem;color:var(--text-color-secondary);display:block}.detail-item strong{font-size:1.1rem;font-weight:500;color:var(--text-color)}.product-overview-section{margin-bottom:1rem}.product-overview-interactive-section .product-overview-section{margin-bottom:0}.product-overview-section h5{font-size:.9rem;font-weight:500;color:var(--text-color-secondary);margin-bottom:.75rem}.product-overview-section p{font-size:.9rem;line-height:1.5}.product-overview-section.warning{padding:.75rem;border-radius:8px;background:#f59e0b1a;border:1px solid rgba(251,191,36,.2)}.product-overview-section.warning h5,.product-overview-section.warning p,.product-overview-section.warning ul{color:#fcd34d}.product-overview-section.success{padding:.75rem;border-radius:8px;background:#22c55e1a;border:1px solid rgba(52,211,153,.2)}.product-overview-section.success h5{color:#a7f3d0}.unit-selector-group{display:flex;flex-wrap:wrap;gap:.5rem;border:none}.unit-selector-group input[type=radio]{display:none}.unit-selector-group label.btn{border-radius:8px;border:1px solid var(--border-color);background:transparent;color:var(--text-color-secondary)}.unit-selector-group input[type=radio]:checked+label.btn{background-color:var(--primary-color);color:var(--white);border-color:var(--primary-color)}.unit-selector-group label.btn:hover{background-color:var(--surface-color)}.product-overview-footer{margin-top:auto}.add-to-cart-btn{width:100%}.add-to-cart-btn.is-adding{background-color:#0056b3}.btn-content{display:flex;align-items:center;justify-content:center;gap:.5rem}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:var(--white);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:10%;box-sizing:border-box;color:var(--text-color-secondary);opacity:.7}.image-placeholder svg{width:100%;height:100%}.bundle-details-item-name{font-weight:500;white-space:normal;word-break:break-word}#variant-selector{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23e2e8f0' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}@media(max-width:768px){.product-overview-modal-layout{flex-direction:column}.product-overview-image-pane img{max-height:250px}}.product-overview-wrapper{display:block;width:100%}.product-overview-details-pane{max-height:none;overflow:visible;padding-right:0;margin-bottom:.5rem}.product-overview-details-pane::-webkit-scrollbar{width:6px}.product-overview-details-pane::-webkit-scrollbar-track{background:transparent}.product-overview-details-pane::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.product-overview-details-pane::-webkit-scrollbar-thumb:hover{background:var(--text-color-secondary)}.product-grid-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.75rem;margin-top:.5rem;margin-bottom:.75rem;max-height:180px;overflow-y:auto;padding:.5rem;border:1px solid var(--border-color);border-radius:8px;background:var(--surface-color-inset)}.product-grid-container::-webkit-scrollbar{width:6px}.product-grid-container::-webkit-scrollbar-track{background:transparent}.product-grid-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.product-grid-item{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem;position:relative;cursor:default;transition:all .2s ease;-webkit-user-select:none;user-select:none}.product-grid-item.clickable{cursor:pointer}.product-grid-item.clickable:hover{background:var(--surface-color-hover);transform:translateY(-2px);border-color:var(--primary-color)}.product-grid-item.active{background:var(--surface-color-inset)!important;border-color:var(--primary-color)!important;box-shadow:0 0 0 2px #60a5fa33}.product-grid-item-header{display:flex;justify-content:space-between;align-items:flex-start;width:100%;position:relative}.product-grid-item-image{width:48px;height:48px;border-radius:6px;background:#fff;padding:4px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);margin:0 auto}.product-grid-item-image img{max-width:100%;max-height:100%;object-fit:contain}.product-grid-item-title{font-size:.8rem;font-weight:500;color:var(--text-color);line-height:1.25;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:2rem}#modal-container .modal-content.large-modal.product-overview-modal-content{width:min(92vw,750px)!important;max-width:min(92vw,750px)!important;max-height:calc(100dvh - max(24px,env(safe-area-inset-top,12px) + env(safe-area-inset-bottom,12px) + 24px))!important;height:auto!important;display:flex;flex-direction:column;overflow:hidden!important;box-sizing:border-box!important}#modal-container .modal-content.large-modal.product-overview-modal-content .modal-body{overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;flex:1 1 auto;min-height:0;padding-bottom:.5rem!important}#modal-container .modal-content.large-modal.product-overview-modal-content .product-overview-details-pane{max-height:none!important;overflow:visible!important;padding-right:0!important}#modal-container .modal-content.large-modal.product-overview-modal-content.variant-overview-modal,#modal-container .modal-content.large-modal.product-overview-modal-content.bundle-details-modal-content{min-width:0!important;max-width:min(92vw,750px)!important;width:min(92vw,750px)!important;height:auto!important;max-height:calc(100dvh - max(24px,env(safe-area-inset-top,12px) + env(safe-area-inset-bottom,12px) + 24px))!important;overflow:hidden!important;box-sizing:border-box!important}@media(max-width:768px),(pointer:coarse)and (max-width:1024px){#modal-container .modal-content.large-modal.product-overview-modal-content,#modal-container .modal-content.large-modal.product-overview-modal-content.variant-overview-modal,#modal-container .modal-content.large-modal.product-overview-modal-content.bundle-details-modal-content{min-width:0!important;width:100%!important;max-width:min(100vw - 20px,520px)!important;max-height:calc(100dvh - max(20px,env(safe-area-inset-top,8px) + env(safe-area-inset-bottom,8px) + 20px))!important;margin:auto 0!important}.modal-hero-container{padding:.45rem!important;margin:-.75rem -.75rem .5rem!important}.modal-hero-image-wrapper{max-height:85px!important}.modal-hero-image-wrapper img{max-height:75px!important;object-fit:contain!important}.product-overview-details-pane{max-height:none!important;overflow-y:visible!important;padding-right:0!important;margin-bottom:.25rem!important}.product-overview-details-grid{grid-template-columns:repeat(2,1fr)!important;gap:.35rem!important;margin-bottom:.45rem!important}.detail-item{padding:.3rem .55rem!important}.detail-item span{font-size:.72rem!important}.detail-item strong{font-size:.9rem!important}.product-grid-container{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))!important;max-height:110px!important;gap:.35rem!important;padding:.35rem!important;margin-bottom:.45rem!important}.product-grid-item{padding:.35rem .25rem!important}.product-grid-item-image{width:36px!important;height:36px!important}.product-grid-item-title{font-size:.72rem!important;line-height:1.2!important;height:auto!important;max-height:2.4rem!important}.cert-status-banner{padding:.4rem .65rem!important;font-size:.8rem!important;margin-bottom:.45rem!important}.product-card-trigger{transform:none!important;transform-style:flat!important;will-change:auto!important}.product-card-trigger .glare{display:none!important}}.student-list-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem}#student-search{flex-grow:1;max-width:400px;background-color:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);border-radius:8px;padding:.6rem 1rem;color:var(--text-color);font-size:.9rem}#student-search:focus{outline:none;border-color:#00338580;background-color:var(--surface-color-hover)}.student-member-list-container{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.member-list-header{display:flex;align-items:center;padding:.75rem var(--space-md);font-size:.8rem;font-weight:500;color:var(--text-color-secondary);border-bottom:1px solid var(--border-color);background-color:#0000001a;text-transform:uppercase;letter-spacing:.5px}.member-card{display:flex;align-items:center;padding:.75rem var(--space-md);border-bottom:1px solid var(--border-color);transition:background-color .2s ease-in-out;cursor:pointer}.member-card:last-child{border-bottom:none}.member-card:hover{background-color:#ffffff08}.member-header-name,.member-info-name{flex:1 1 35%;min-width:200px}.member-header-status,.member-info-status{flex:0 0 170px;display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.member-header-joined,.member-info-joined{flex:0 0 110px;text-align:left}.member-header-actions,.member-info-actions{flex:0 0 200px;display:flex;justify-content:flex-end;gap:.4rem}.member-info-name{display:flex;align-items:center;gap:1rem}.member-avatar{width:36px;height:36px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;background-color:var(--surface-color);border:1px solid var(--border-color)}.member-avatar svg{width:20px;height:20px}.member-name-email .name{font-weight:500;color:var(--text-color)}.member-name-email .email{font-size:.8rem;color:var(--text-color-secondary)}.member-info-status .status-pill{padding:.2rem .6rem;border-radius:999px;font-size:.7rem;font-weight:500;text-transform:uppercase;display:inline-block}.member-info-status .status-pill.student{background-color:#d6d2c41a;color:var(--brand-silver)}.member-info-status .status-pill.specialist{background-color:#00338533;color:#6a95e2}.member-info-joined{font-size:.85rem;color:var(--text-color-secondary)}.avatar-composer{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:center;padding:1rem;background:var(--surface-color-inset);border-radius:8px;margin-top:.5rem}.avatar-preview-wrapper{flex-shrink:0}#avatar-preview.member-avatar.large{width:100px;height:100px}#avatar-preview.member-avatar.large svg{width:50px;height:50px}.avatar-controls{flex-grow:1;display:flex;flex-direction:column;gap:1rem;min-width:250px}.avatar-control-group h5{font-size:.85rem;font-weight:500;color:var(--text-color-secondary);margin-bottom:.5rem}.avatar-icon-selector{display:flex;flex-wrap:wrap;gap:.75rem}.avatar-icon-option{width:50px;height:50px;border-radius:50%;border:3px solid transparent;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0;background-color:var(--surface-color)}.avatar-icon-option svg{width:24px;height:24px}.avatar-icon-option:hover{transform:translateY(-2px);border-color:var(--text-color-secondary)}.avatar-icon-option.selected{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color)}.avatar-color-selector{display:flex;flex-wrap:wrap;gap:.75rem}.avatar-color-option{width:36px;height:36px;border-radius:50%;border:3px solid var(--surface-color);cursor:pointer;transition:all .2s ease;background-color:var(--avatar-color)}.avatar-color-option:hover{transform:translateY(-2px)}.avatar-color-option.selected{box-shadow:0 0 0 3px var(--primary-color);transform:scale(1.1)}.glass-tabs{display:inline-flex;position:relative;background:var(--surface-color-inset);border-radius:12px;padding:4px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 1px 2px #ffffff1a;overflow:visible;width:max-content;min-width:max-content;flex-shrink:0;border:1px solid var(--border-color)}.glass-tabs input[type=radio]{display:none}.glass-tabs label{flex:1;display:flex;align-items:center;justify-content:center;min-width:100px;font-size:.85rem;padding:.5rem 1rem;cursor:pointer;font-weight:500;color:var(--text-color-secondary);position:relative;z-index:2;transition:color .4s ease-in-out;white-space:normal;text-align:center;line-height:1.3}.glass-tabs label:hover{color:var(--text-color)}.glass-tabs input[type=radio]:checked+label{color:var(--white)}.glass-tabs .glider{position:absolute;top:4px;bottom:4px;left:4px;height:calc(100% - 8px);border-radius:8px;z-index:1;transition:transform .4s cubic-bezier(.68,-.55,.27,1.55);background:var(--primary-color);box-shadow:0 2px 8px #00338566;pointer-events:none}.glass-tabs[data-tabs="2"] .glider{width:calc((100% - 8px)/2)}.glass-tabs[data-tabs="2"] input:nth-of-type(1):checked~.glider{transform:translate(0)}.glass-tabs[data-tabs="2"] input:nth-of-type(2):checked~.glider{transform:translate(100%)}.glass-tabs[data-tabs="3"] .glider{width:calc((100% - 8px) / 3)}.glass-tabs[data-tabs="3"] input:nth-of-type(1):checked~.glider{transform:translate(0)}.glass-tabs[data-tabs="3"] input:nth-of-type(2):checked~.glider{transform:translate(100%)}.glass-tabs[data-tabs="3"] input:nth-of-type(3):checked~.glider{transform:translate(200%)}.glass-tabs[data-tabs="4"] .glider{width:calc((100% - 8px)/4)}.glass-tabs[data-tabs="4"] input:nth-of-type(1):checked~.glider{transform:translate(0)}.glass-tabs[data-tabs="4"] input:nth-of-type(2):checked~.glider{transform:translate(100%)}.glass-tabs[data-tabs="4"] input:nth-of-type(3):checked~.glider{transform:translate(200%)}.glass-tabs[data-tabs="4"] input:nth-of-type(4):checked~.glider{transform:translate(300%)}.glass-tabs[data-tabs="5"] .glider{width:calc((100% - 8px)/5)}.glass-tabs[data-tabs="5"] input:nth-of-type(1):checked~.glider{transform:translate(0)}.glass-tabs[data-tabs="5"] input:nth-of-type(2):checked~.glider{transform:translate(100%)}.glass-tabs[data-tabs="5"] input:nth-of-type(3):checked~.glider{transform:translate(200%)}.glass-tabs[data-tabs="5"] input:nth-of-type(4):checked~.glider{transform:translate(300%)}.glass-tabs[data-tabs="5"] input:nth-of-type(5):checked~.glider{transform:translate(400%)}.glass-tabs[data-tabs="6"] .glider{width:calc((100% - 8px) / 6)}.glass-tabs[data-tabs="6"] input:nth-of-type(1):checked~.glider{transform:translate(0)}.glass-tabs[data-tabs="6"] input:nth-of-type(2):checked~.glider{transform:translate(100%)}.glass-tabs[data-tabs="6"] input:nth-of-type(3):checked~.glider{transform:translate(200%)}.glass-tabs[data-tabs="6"] input:nth-of-type(4):checked~.glider{transform:translate(300%)}.glass-tabs[data-tabs="6"] input:nth-of-type(5):checked~.glider{transform:translate(400%)}.glass-tabs[data-tabs="6"] input:nth-of-type(6):checked~.glider{transform:translate(500%)}.glass-tabs-dynamic-wrapper{max-width:100%;overflow-x:auto;display:flex;justify-content:center;-webkit-overflow-scrolling:touch;-ms-overflow-style:none;scrollbar-width:none;padding:4px 1rem;box-sizing:border-box}@media(max-width:768px){.glass-tabs-dynamic-wrapper{justify-content:flex-start;padding:4px 1.25rem}}.glass-tabs-dynamic-wrapper::-webkit-scrollbar{display:none}.glass-tabs.dynamic label{flex-shrink:0;max-width:140px}.glass-tabs.dynamic .glider{transition:transform .4s cubic-bezier(.68,-.55,.27,1.55),width .4s cubic-bezier(.68,-.55,.27,1.55)}.modal-tab-content{display:none;opacity:0;transform:translateY(6px);transition:opacity .25s ease-out,transform .25s ease-out}.modal-tab-content.active{display:block;opacity:1;transform:translateY(0);animation:tabFadeInUp .25s cubic-bezier(.16,1,.3,1) forwards}@keyframes tabFadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.popover-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1999;opacity:0;transition:opacity .2s ease;pointer-events:none}.popover-backdrop.visible{opacity:1;pointer-events:auto}.popover-container{position:fixed;z-index:2000;background:#0f172af2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);box-shadow:0 10px 30px #0000004d;border-radius:12px;width:min(112.5vw,450px);min-height:220px;height:auto;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:opacity .2s ease-in-out}.popover-container.visible{opacity:1;pointer-events:auto}.popover-container .popover-form{width:100%;flex-grow:1;display:flex;flex-direction:column}.popover-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.popover-title{margin:0;font-size:1rem;font-weight:500}.popover-close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-color-secondary)}.popover-body{flex-grow:1;padding:.5rem;display:flex}.popover-textarea-wrapper{width:100%;flex-grow:1;display:flex;flex-direction:column}.popover-textarea{width:100%;flex-grow:1;resize:none;border:none;background:transparent;color:var(--text-color);font-family:inherit;font-size:.9rem;padding:.5rem}.popover-textarea:focus{outline:none}.popover-footer{padding:.75rem 1rem;border-top:1px solid var(--border-color);text-align:right;flex-shrink:0}.popover-trigger-button{background:var(--surface-color-inset);border:1px solid var(--border-color);color:var(--text-color-secondary);padding:.5rem 1rem;border-radius:6px;cursor:pointer;text-align:left;min-height:38px;width:100%;transition:all .2s ease;font-style:italic;font-size:.9rem}.popover-trigger-button:hover{background:var(--surface-color);border-color:var(--primary-color)}.popover-trigger-button.has-content{color:var(--text-color);font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.popover-trigger-button:not(.has-content):before{content:"Add Note"}.image-cropper-container{width:100%;height:400px;margin-bottom:1rem;background-color:var(--background-color)}.cropper-container{background-color:#fff!important}.cropper-bg{background-image:none!important}.cropper-view-box{box-shadow:0 0 0 1px #39f;outline:0}.cropper-modal{background-color:#0f172acc!important}.cropper-face{background-color:transparent!important}.cropper-controls{display:flex;align-items:center;gap:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.cropper-controls label{font-weight:500;flex-shrink:0}.cropper-controls input[type=range]{flex-grow:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:8px;background:var(--surface-color);outline:none;border-radius:4px}.cropper-controls input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;background:var(--primary-color);cursor:pointer;border-radius:50%}.cropper-controls input[type=range]::-moz-range-thumb{width:20px;height:20px;background:var(--primary-color);cursor:pointer;border-radius:50%}.cropper-controls .btn-icon.cropper-action-btn{flex-shrink:0;margin-left:.5rem}.cropper-action-btn svg{width:18px;height:18px}.social-btn{padding:1.25rem;border-radius:9999px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-color);background:linear-gradient(to top right,#0009,#0006);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transition:all .3s ease-out;cursor:pointer;position:relative;overflow:hidden;display:inline-flex;text-decoration:none}.social-btn:hover{transform:scale(1.1)}.social-btn:active{transform:scale(.95);transition-duration:.1s}.social-btn-sweep{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,transparent,rgba(255,255,255,.1),transparent);transform:translate(-100%);transition:transform .7s ease-out}.social-btn:hover .social-btn-sweep{transform:translate(100%)}.social-btn-icon{position:relative;z-index:10;width:1.75rem;height:1.75rem;fill:currentColor;transition:color .3s}.social-btn.facebook{color:#1877f2;border-color:#1877f233}.social-btn.facebook:hover{border-color:#1877f280;box-shadow:0 10px 25px -5px #1877f24d,0 8px 10px -6px #1877f24d;color:#4a99f5}.social-btn.facebook:hover .social-btn-sweep{background:linear-gradient(to right,transparent,rgba(24,119,242,.2),transparent)}.social-btn.instagram{color:#e4405f;border-color:#e4405f33}.social-btn.instagram:hover{border-color:#e4405f80;box-shadow:0 10px 25px -5px #e4405f4d,0 8px 10px -6px #e4405f4d;color:#e96882}.social-btn.instagram:hover .social-btn-sweep{background:linear-gradient(to right,transparent,rgba(228,64,95,.2),transparent)}.social-btn.discord{color:#5865f2;border-color:#5865f233}.social-btn.discord:hover{border-color:#5865f280;box-shadow:0 10px 25px -5px #5865f24d,0 8px 10px -6px #5865f24d;color:#7b85f5}.social-btn.discord:hover .social-btn-sweep{background:linear-gradient(to right,transparent,rgba(88,101,242,.2),transparent)}.social-btn.twitter{color:#fff;border-color:#fff3}.social-btn.twitter:hover{border-color:#ffffff80;box-shadow:0 10px 25px -5px #ffffff4d,0 8px 10px -6px #ffffff4d;color:#f0f0f0}.social-btn.twitter:hover .social-btn-sweep{background:linear-gradient(to right,transparent,rgba(255,255,255,.2),transparent)}.social-btn.youtube{color:red;border-color:#f003}.social-btn.youtube:hover{border-color:#ff000080;box-shadow:0 10px 25px -5px #ff00004d,0 8px 10px -6px #ff00004d;color:#f33}.social-btn.youtube:hover .social-btn-sweep{background:linear-gradient(to right,transparent,rgba(255,0,0,.2),transparent)}.social-btn.bluesky{color:#0285ff;border-color:#0285ff33}.social-btn.bluesky:hover{border-color:#0285ff80;box-shadow:0 10px 25px -5px #0285ff4d,0 8px 10px -6px #0285ff4d;color:#359dff}.social-btn.bluesky:hover .social-btn-sweep{background:linear-gradient(to right,transparent,rgba(2,133,255,.2),transparent)}.faq-section{padding:2rem 0;width:100%}.faq-header{max-width:42rem;margin-left:auto;margin-right:auto;text-align:center;margin-bottom:3rem}.faq-header h2{font-size:1.875rem;font-weight:600;margin-bottom:.75rem;color:var(--text-color);border-bottom:none;padding-bottom:0}.faq-header p{font-size:.875rem;color:var(--text-color-secondary)}.faq-items-container{max-width:42rem;margin-left:auto;margin-right:auto;display:flex;flex-direction:column;gap:.5rem}.faq-item{border-radius:.75rem;transition:all .2s ease-in-out;border:1px solid var(--border-color);background-color:transparent}.faq-item:hover{background-color:var(--surface-color-inset)}.faq-item.open{background-color:var(--surface-color)}.faq-question-btn{width:100%;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;background:transparent;border:none;cursor:pointer;text-align:left;font-family:inherit}.faq-question-btn h3{font-size:1rem;font-weight:500;transition:color .2s;color:var(--text-color-secondary)}.faq-item.open .faq-question-btn h3{color:var(--text-color)}.faq-chevron{flex-shrink:0;transition:transform .2s,color .2s;color:var(--text-color-secondary)}.faq-chevron svg{width:1.25rem;height:1.25rem}.faq-item.open .faq-chevron{transform:rotate(180deg);color:var(--primary-color)}.faq-answer-wrapper{max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease-out,opacity .3s ease-out}.faq-item.open .faq-answer-wrapper{opacity:1}.faq-answer{padding:.5rem 1.5rem 1.25rem}.faq-answer p{font-size:.875rem;color:var(--text-color-secondary);line-height:1.6}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.9rem;font-weight:500;margin-bottom:.5rem;color:var(--text-color-secondary)}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel],.form-group input[type=url],.form-group input[type=password],.form-group input[type=number],.form-group input[type=search],.form-group input[type=date],.form-group select,.form-group textarea{display:block;width:100%;padding:.75rem;border:1px solid var(--border-color);background-color:var(--surface-color-inset);color:var(--text-color);border-radius:8px;font-size:.9rem;font-family:inherit;transition:background-color .2s,border-color .2s}.form-group textarea{resize:vertical;min-height:160px;max-width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);background-color:#0000004d}.form-group input[readonly]{background-color:var(--surface-color);cursor:not-allowed}.dropdown-menu-trigger{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;color:var(--text-color);font-weight:500;cursor:pointer;transition:background-color .2s,border-color .2s}.dropdown-menu-trigger:hover,.dropdown-menu-trigger.active{background:var(--surface-color-hover);border-color:var(--primary-color)}.dropdown-menu-trigger svg{width:16px;height:16px;color:var(--text-color-secondary)}.dropdown-menu{position:absolute;top:calc(100% + 5px);right:0;z-index:102;background:#0f172af2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:12px;width:300px;box-shadow:var(--shadow-interactive);opacity:0;transform:translateY(-10px);transition:opacity .2s ease,transform .2s ease;visibility:hidden;padding:.5rem}.dropdown-menu.visible{opacity:1;transform:translateY(0);visibility:visible}.dropdown-menu-header{padding:.75rem 1rem;font-weight:500;border-bottom:1px solid var(--border-color)}.dropdown-menu-section{padding:.5rem}.dropdown-menu-section-title{font-size:.75rem;font-weight:500;color:var(--text-color-secondary);text-transform:uppercase;padding:.5rem}.dropdown-menu-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .5rem;border-radius:6px;font-size:.9rem}.dropdown-menu-item label{flex-grow:1;cursor:pointer}.dropdown-menu-item input[type=radio],.dropdown-menu-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary-color);cursor:pointer}.dropdown-menu-item .btn-group{width:100%}.dropdown-menu-item .form-group{margin-bottom:0}.dropdown-menu-item .form-group label{font-size:.8rem;margin-bottom:.25rem}.dropdown-menu-footer{padding:.75rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end}.dropdown-menu .form-group select{width:100%;padding:.6rem 2.5rem .6rem 1rem;border:1px solid var(--border-color);background-color:var(--surface-color-inset);color:var(--text-color);border-radius:8px;font-size:.9rem;font-family:inherit;transition:border-color .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23e2e8f0' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em}.dropdown-menu .form-group select:focus{outline:none;border-color:var(--primary-color)}.context-menu{position:fixed;z-index:1000;background:#0f172af2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-interactive);padding:.5rem;min-width:150px;display:flex;flex-direction:column;gap:.25rem}.context-menu-item{padding:.5rem .75rem;border-radius:6px;cursor:pointer;font-size:.9rem;color:var(--text-color);transition:background .2s;display:flex;align-items:center;gap:.5rem}.context-menu-item:hover{background:var(--surface-color-hover)}.context-menu-item.danger{color:var(--danger-color)}.context-menu-item.danger:hover{background:#ef44441a}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1rem;color:var(--text-color-secondary);background:var(--surface-color-inset);border-radius:12px;margin-top:2rem;border:1px solid var(--border-color)}.empty-state svg{width:64px;height:64px;margin-bottom:1.5rem;opacity:.5;fill:currentColor}.empty-state h2{font-size:1.25rem;color:var(--text-color);margin-bottom:.5rem;font-weight:500;border:none;padding:0}.verification-notice{background-color:#ffc1071a;border:1px solid rgba(255,193,7,.2);border-left:4px solid var(--pending-color);margin-top:1rem}.verification-notice h2{color:var(--pending-color);border-bottom:none;padding-bottom:0;margin-bottom:.5rem}.verification-notice p{color:var(--text-color);margin-bottom:1rem;font-size:.95rem}.verification-notice .btn{background-color:#ffc10733;border-color:var(--pending-color);color:var(--pending-color)}.verification-notice .btn:hover{background-color:#ffc1074d;color:#fff}.verification-notice .btn:disabled{background-color:#ffc1071a;color:var(--pending-color);opacity:.7;cursor:not-allowed}.rich-items-list{display:flex;flex-direction:column;gap:.5rem}.rich-item-row{display:flex;gap:1rem;padding:.75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;align-items:flex-start;transition:background .2s ease,border-color .2s ease}.rich-item-row:hover{background:#ffffff0f;border-color:#fff3}.rich-item-row.clickable{cursor:pointer}.rich-item-image{width:60px;height:60px;flex-shrink:0;border-radius:6px;overflow:hidden;background:#0003;display:flex;align-items:center;justify-content:center;color:var(--text-color-secondary)}.rich-item-image img{width:100%;height:100%;object-fit:cover}.rich-item-image svg{width:24px;height:24px;opacity:.7}.rich-item-details{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.rich-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.25rem}.rich-item-name{font-weight:500;font-size:1rem;color:var(--text-color)}.rich-item-meta{display:flex;gap:.75rem;font-size:.85rem;color:var(--text-color-secondary);align-items:center;flex-wrap:wrap}.rich-item-meta span{display:flex;align-items:center;gap:.25rem}.rich-item-image.avatar{background:transparent;border-radius:50%}.rich-item-image.status-icon{font-size:1.5rem;background:#ffffff0d}.modal-section-title{margin-top:1.5rem;margin-bottom:.75rem;font-size:.9rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-color-secondary);font-weight:600}.request-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;background:rgba(var(--primary-rgb),.05);padding:1rem;border-radius:8px;border:1px solid rgba(var(--primary-rgb),.1);margin-bottom:1rem}.meta-item label{display:block;font-size:.75rem;color:var(--text-color-secondary);margin-bottom:.25rem}.meta-item span{font-weight:500;font-size:1rem}#tab-calendar.active{display:flex;flex-direction:column;flex-grow:1}.event-manager{background:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;padding:1rem;display:flex;flex-direction:column;flex-grow:1;min-height:0}.em-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem;margin-bottom:1rem;border-bottom:1px solid var(--border-color)}.em-header-left,.em-header-right{display:flex;align-items:center;gap:.75rem}.em-month-year{font-size:1.25rem;font-weight:500;min-width:180px}.em-nav-btn,.em-view-btn,.em-filter-btn{background:var(--surface-color-inset);border:1px solid var(--border-color);color:var(--text-color-secondary);padding:.5rem 1rem;border-radius:8px;cursor:pointer;transition:background-color .2s,color .2s;display:inline-flex;align-items:center;gap:.5rem;font-weight:500;font-size:.85rem}.em-nav-btn:hover,.em-view-btn:hover,.em-filter-btn:hover{background-color:var(--surface-color);color:var(--text-color)}.em-nav-btn svg,.em-view-btn svg,.em-filter-btn svg{width:16px;height:16px}.em-view-switcher{display:flex;gap:.5rem}.em-view-btn.active{background-color:var(--primary-color);color:var(--white);border-color:var(--primary-color)}.em-content-container{flex-grow:1;min-height:0;display:flex;flex-direction:column}.em-month-grid{display:flex;flex-direction:column;flex-grow:1}.em-day-headers{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--border-color)}.em-day-header{text-align:center;padding:.5rem 0;font-size:.8rem;font-weight:500;color:var(--text-color-secondary)}.em-weeks-container{flex-grow:1;overflow-y:auto;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.em-week{display:flex;flex-direction:column;flex-grow:1;flex-shrink:0;min-height:100px;position:relative;border-bottom:1px solid var(--border-color)}.em-week:last-child{border-bottom:none}.em-week-days{display:grid;grid-template-columns:repeat(7,1fr);flex-grow:1}.em-day{border-right:1px solid var(--border-color);padding:.5rem;transition:background-color .2s}.em-day:last-child{border-right:none}.em-day.em-other-month{background-color:#0000001a}.em-day-number{font-size:.8rem;font-weight:500;margin-bottom:.25rem;text-align:right}.em-day-number.em-today{background:var(--primary-color);color:#fff;width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-left:auto}.em-week-events{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.em-event-bar{position:absolute;height:20px;padding:2px 8px;font-size:.75rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;pointer-events:auto;border:1px solid rgba(0,0,0,.3);box-shadow:0 1px 3px #0003;box-sizing:border-box;transition:transform .2s}.em-event-bar:hover{transform:scale(1.02);z-index:10}.em-event-start{border-radius:4px 0 0 4px}.em-event-end{border-radius:0 4px 4px 0}.em-event-start.em-event-end{border-radius:4px}.em-event-middle{border-radius:0;border-left:none;border-right:none}.em-bg-purple{background-color:#8a2be2}.em-bg-blue{background-color:var(--primary-color)}.em-bg-green{background-color:#228b22}.em-bg-orange{background-color:orange}.em-bg-pink{background-color:#db2777}.em-list-view{flex-grow:1;overflow-y:auto;padding:.5rem}.em-list-group{margin-bottom:1.5rem}.em-list-group h3{font-size:.9rem;font-weight:500;color:var(--text-color-secondary);padding-bottom:.5rem;border-bottom:1px solid var(--border-color);margin-bottom:1rem}.em-list-item{display:flex;gap:1rem;padding:.75rem;border-radius:8px;cursor:pointer;transition:background-color .2s}.em-list-item:hover{background-color:var(--surface-color-hover)}.em-list-item-color-bar{width:4px;border-radius:2px;flex-shrink:0}.em-list-item-content{flex-grow:1}.em-list-item-header{display:flex;justify-content:space-between;align-items:center}.em-list-item-title{font-weight:500}.em-list-item-type{font-size:.75rem;color:var(--text-color-secondary);background-color:var(--surface-color-inset);padding:.2rem .5rem;border-radius:6px}.em-list-item-time{font-size:.8rem;color:var(--text-color-secondary);margin-top:.25rem}.em-list-empty{text-align:center;padding:3rem;color:var(--text-color-secondary)}.spotlight-container{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:-1}.spotlight-overlay{position:absolute;top:0;left:0;width:100%;height:100%}.spotlight{position:absolute;filter:blur(100px);opacity:.6;border-radius:50%;transform-origin:center}.spotlight-left{top:50%;left:50%;width:65vw;height:45vw;background:radial-gradient(circle,#00338580,#0000 70%)}.spotlight-mid{top:50%;left:50%;width:55vw;height:55vw;background:radial-gradient(circle,#e526264d,#0000 70%)}.spotlight-right{top:50%;left:50%;width:75vw;height:45vw;background:radial-gradient(circle,#3c64c866,#0000 70%)}#splash-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;text-align:center;padding:2rem}.splash-content-wrapper{opacity:0;transform-style:preserve-3d;background:#10141e99;backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);border:1px solid rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.15);border-radius:32px;padding:3rem 4rem;box-shadow:0 30px 60px #0006,inset 0 1px #ffffff1a;max-width:650px;margin:0 auto}.splash-header{margin-bottom:3rem;display:flex;flex-direction:column;align-items:center}#logo{width:140px;height:140px;margin-bottom:2rem;border-radius:28px;box-shadow:0 10px 40px #0000004d;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);padding:10px;transition:box-shadow .3s ease}#logo:hover{box-shadow:0 0 25px #fff3,0 10px 40px #0006}#welcome-message{font-size:3rem;font-weight:700;margin-bottom:.5rem;color:var(--white);letter-spacing:1px;text-shadow:0 2px 10px rgba(0,0,0,.3)}#welcome-subtitle{font-size:1.25rem;font-weight:300;color:var(--text-color-secondary);max-width:500px}.action-buttons{display:flex;gap:1.5rem;justify-content:center}.action-buttons .btn{min-width:220px;font-size:1.05rem;padding:1rem 2rem;font-weight:600;text-transform:none;letter-spacing:.5px;border-radius:14px;position:relative;overflow:hidden;z-index:1;border:none;transition:transform .2s cubic-bezier(.25,.46,.45,.94),box-shadow .3s ease}.action-buttons .btn:active{transform:scale(.96)!important}.action-buttons .btn-primary{background:linear-gradient(135deg,var(--primary-color-light) 0%,var(--primary-color) 100%);color:#fff;box-shadow:0 10px 25px #00338566,inset 0 2px #fff3}.action-buttons .btn-primary:hover{transform:translateY(-3px);box-shadow:0 15px 35px #00338599,inset 0 2px #ffffff4d}.action-buttons .btn-secondary{background:#ffffff0d;color:#fff;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.action-buttons .btn-secondary:hover{transform:translateY(-3px);background:#ffffff1f;border-color:#fff6;box-shadow:0 10px 20px #0003}#config-warning-overlay:not([hidden]){position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0a1929e6;z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}#config-warning-content{background-color:var(--surface-color);color:var(--text-color);padding:2.5rem;border-radius:8px;border:1px solid var(--danger-color);max-width:600px;text-align:left;box-shadow:0 5px 25px #00000080}#config-warning-content h2{color:var(--danger-color);margin-top:0;margin-bottom:1rem;font-size:1.5rem}#config-warning-content p{color:var(--text-color-secondary);line-height:1.7;margin-bottom:1rem}#config-warning-content code{background-color:var(--background-color);color:var(--brand-red);padding:.2rem .5rem;border-radius:4px;font-family:monospace}#config-warning-content em{color:var(--text-color);font-style:normal}.main-content{max-width:1200px;margin:3rem auto;padding:0 1.5rem}.main-content--wide{width:100%;max-width:none;margin:3rem 0;padding:0 2rem}.main-content h1,.main-content h2{padding-bottom:.5rem;border-bottom:1px solid var(--border-color);margin-bottom:1.5rem;font-weight:500}.student-dashboard-layout{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem;align-items:flex-start}.dashboard-main-column{display:flex;flex-direction:column;gap:1.5rem}.dashboard-side-column{position:sticky;top:calc(var(--header-height) + 1.5rem);display:flex;flex-direction:column;gap:1.5rem}.student-stats-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.bento-cell{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:14px;padding:1.25rem;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:.5rem;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.student-stat-card{position:relative;overflow:hidden}.student-stat-card:hover{border-color:var(--primary-color-light, #4f80ff);box-shadow:var(--shadow-interactive)}.student-stat-header{display:flex;align-items:center;gap:.6rem}.student-stat-icon-wrapper{width:32px;height:32px;border-radius:8px;background:#4f80ff1f;color:var(--primary-color-light, #4f80ff);display:flex;align-items:center;justify-content:center;flex-shrink:0}.student-stat-icon-wrapper.icon-danger{background:#ef444426;color:#f87171}.student-stat-card h4{margin:0;font-size:.82rem;font-weight:600;color:var(--text-color-secondary);letter-spacing:-.01em}.bento-cell .bento-stat{font-size:2.2rem;font-weight:700;color:var(--text-color);margin-top:.25rem;line-height:1}.bento-cell.overdue .bento-stat{color:#f87171}.bento-cell[data-nav-link]:hover{cursor:pointer}.student-quick-actions-container{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);border-radius:14px;padding:1.25rem;display:flex;flex-direction:column;gap:.85rem;box-shadow:var(--shadow-ambient)}.student-widget-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.06)}.student-widget-header h3{font-size:.95rem;font-weight:700;color:var(--text-color);margin:0;letter-spacing:-.01em}.student-quick-actions-grid{display:flex;flex-direction:column;gap:.65rem}.student-action-card{display:flex;align-items:center;gap:.85rem;padding:.85rem 1rem;background:var(--surface-color-inset, rgba(15, 23, 42, .45));border:1px solid var(--border-color, rgba(255, 255, 255, .06));border-radius:10px;text-decoration:none;color:var(--text-color);transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.student-action-card:hover{background:#1e293bcc;border-color:var(--primary-color-light, #4f80ff);transform:translate(3px);box-shadow:0 4px 12px #0003}.student-action-icon{width:36px;height:36px;border-radius:9px;background:linear-gradient(135deg,#4f80ff33,#00338559);color:var(--primary-color-light, #60a5fa);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s ease}.student-action-card:hover .student-action-icon{transform:scale(1.08)}.student-action-details{flex-grow:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.student-action-title{font-size:.9rem;font-weight:600;color:var(--text-color, #f8fafc);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-action-desc{font-size:.76rem;color:var(--text-color-secondary, #94a3b8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-action-arrow{color:var(--text-color-secondary, #64748b);display:flex;align-items:center;justify-content:center;transition:transform .2s ease,color .2s ease;flex-shrink:0}.student-action-card:hover .student-action-arrow{color:var(--primary-color-light, #60a5fa);transform:translate(2px)}#social-links-container{align-items:center}.social-links-container{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;align-items:center}#announcements-list{display:flex;flex-direction:column;gap:1.5rem}.announcement-card{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.announcement-card.has-image{display:grid;grid-template-columns:1fr}@media(min-width:768px){.announcement-card.has-image{grid-template-columns:1fr 240px}}.announcement-card:hover{border-color:var(--primary-color-light, #4f80ff);box-shadow:0 8px 24px #00000040}.announcement-card-content{padding:1.5rem;display:flex;flex-direction:column;justify-content:center}.announcement-card-header{margin-bottom:.85rem}.announcement-card-header h3{font-size:1.25rem;font-weight:700;margin-bottom:.35rem;color:var(--text-color, #f8fafc);letter-spacing:-.01em}.announcement-card-header time{font-size:.82rem;color:var(--text-color-secondary, #94a3b8);font-weight:500}.announcement-card-preview{font-size:.92rem;line-height:1.6;color:var(--text-color-secondary, #94a3b8);-webkit-box-orient:vertical;display:-webkit-box;-webkit-line-clamp:4;overflow:hidden;text-overflow:ellipsis;position:relative;max-height:6.4em}.announcement-card-image-wrapper{min-height:160px;height:100%;overflow:hidden;background:#0f172a99}.announcement-card-image-wrapper img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.announcement-card:hover .announcement-card-image-wrapper img{transform:scale(1.04)}.modal-content.announcement-modal-dialog{max-width:760px!important;width:92vw!important;border-radius:16px;padding:0!important;overflow:hidden!important}.announcement-modal-dialog .modal-header{padding:1.25rem 1.5rem;background:#1e293b80;border-bottom:1px solid var(--border-color)}.announcement-modal-dialog .modal-header h2{font-size:1.25rem;font-weight:700;color:var(--text-color);letter-spacing:-.01em}.announcement-modal-overhaul{display:flex;flex-direction:column}.announcement-modal-hero{width:100%;max-height:400px;background:#0f172acc;overflow:hidden;position:relative;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:center}.announcement-modal-image{width:100%;height:100%;max-height:400px;object-fit:contain;background:#0a0f1de6;display:block}.announcement-modal-body-content{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.announcement-modal-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem}.announcement-meta-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .75rem;background:#4f80ff1f;border:1px solid rgba(79,128,255,.25);border-radius:20px;font-size:.8rem;font-weight:600;color:var(--primary-color-light, #60a5fa)}.announcement-meta-tag{display:inline-flex;align-items:center;padding:.3rem .65rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:20px;font-size:.75rem;font-weight:500;color:var(--text-color-secondary)}.announcement-modal-text{font-size:.95rem;line-height:1.7;color:#e2e8f0;display:flex;flex-direction:column;gap:.85rem}.announcement-modal-text p{margin:0}.announcement-modal-dialog .modal-footer{padding:1rem 1.5rem;background:#1e293b4d;margin-top:0;border-top:1px solid var(--border-color)}#equipment-list{margin-top:2rem}.equipment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.equipment-header h1{margin:0;border:none;padding:0}#bundles-grid-view{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.subcategory-accordion{border-bottom:1px solid var(--border-color)}.subcategory-accordion-header{display:flex;justify-content:center;align-items:center;width:100%;padding:.85rem .5rem;background:none;border:none;color:var(--text-color);cursor:pointer;font-family:inherit;position:relative;border-radius:8px;transition:background-color .2s ease}.subcategory-accordion-header:hover{background-color:var(--surface-color-inset)}.subcategory-accordion-header h3{margin:0;font-size:1.15rem;font-weight:600;display:flex;align-items:center;gap:.5rem;color:var(--text-color);text-align:center}.subcategory-header-actions{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.75rem}.accordion-toggle-icon{transition:transform .3s ease-in-out}.accordion-toggle-icon svg{width:24px;height:24px}.subcategory-accordion.open .accordion-toggle-icon{transform:rotate(45deg)}.subcategory-accordion-content{height:0;overflow:hidden;transition:height .3s ease-in-out}.subcategory-item-grid{display:grid;grid-template-columns:repeat(auto-fit,220px);justify-content:center;gap:1rem;padding:1rem 0 2rem;align-items:stretch}.reservations-header-student{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2rem}@media(min-width:768px){.reservations-header-student{flex-direction:row;justify-content:space-between;align-items:center}}.tab-count-pill{display:inline-flex;align-items:center;justify-content:center;background:var(--primary-color-alpha-20, rgba(79, 128, 255, .18));color:var(--primary-color-light, #60a5fa);font-size:.72rem;font-weight:700;padding:.1rem .45rem;border-radius:12px;margin-left:.35rem}#reservations-list{display:flex;flex-direction:column;gap:1.5rem}.res-card{background:var(--surface-color);border:1px solid var(--border-color);border-radius:16px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-ambient);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;overflow:hidden;display:flex;flex-direction:column}.res-card:hover{border-color:#60a5fa59;box-shadow:var(--shadow-interactive)}.res-card-header{padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;background:#0000001f;border-bottom:1px solid var(--border-color);flex-wrap:wrap}.res-card-title-group{flex:1 1 300px;display:flex;flex-direction:column;gap:.35rem}.res-card-title-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.res-card-title{font-size:1.15rem;font-weight:600;color:var(--text-color);margin:0}.res-card-subtitle-row{display:flex;align-items:center;gap:.65rem;font-size:.85rem;color:var(--text-color-secondary);flex-wrap:wrap}.res-id-chip{font-family:monospace;font-size:.75rem;font-weight:600;background:var(--surface-color-inset);border:1px solid var(--border-color);padding:.15rem .45rem;border-radius:6px;color:var(--text-color-secondary)}.res-partner-pill{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;color:#93c5fd;background:#3b82f61f;border:1px solid rgba(59,130,246,.25);padding:.2rem .55rem;border-radius:20px}.res-partner-pill strong{color:#bfdbfe}.res-card-status-group{display:flex;align-items:center;gap:.5rem}.res-status-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .85rem;border-radius:20px;font-size:.82rem;font-weight:600;letter-spacing:-.01em;white-space:nowrap}.res-status-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.res-status-badge.active{background:#22c55e24;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.res-status-badge.active .res-status-dot{box-shadow:0 0 8px #4ade80;animation:pulse-dot 2s infinite}.res-status-badge.due-soon{background:#f59e0b24;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.res-status-badge.due-urgent{background:#ef444426;color:#f87171;border:1px solid rgba(239,68,68,.35)}.res-status-badge.due-urgent .res-status-dot{box-shadow:0 0 8px #f87171;animation:pulse-dot 1s infinite}.res-status-badge.overdue{background:#dc262633;color:#fca5a5;border:1px solid rgba(220,38,38,.45)}.res-status-badge.overdue .res-status-dot{box-shadow:0 0 10px #f87171;animation:pulse-dot .8s infinite}.res-status-badge.pending{background:#eab30824;color:#facc15;border:1px solid rgba(234,179,8,.3)}.res-status-badge.approved{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.res-status-badge.returned{background:#94a3b81f;color:#cbd5e1;border:1px solid rgba(148,163,184,.2)}.res-status-badge.denied{background:#ef444424;color:#f87171;border:1px solid rgba(239,68,68,.3)}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}.res-card-body{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1.25rem}.res-card-bento-grid{display:grid;grid-template-columns:1fr;gap:1.25rem}@media(min-width:850px){.res-card-bento-grid{grid-template-columns:280px 1fr}}.res-bento-cell{background:var(--surface-color-inset);border:1px solid var(--border-color);border-radius:12px;padding:1.15rem;display:flex;flex-direction:column;gap:.85rem}.res-section-heading{margin:0;font-size:.88rem;font-weight:600;color:var(--text-color-secondary);display:flex;align-items:center;gap:.45rem;text-transform:uppercase;letter-spacing:.04em}.res-schedule-tiles{display:flex;flex-direction:column;gap:.75rem}.res-time-tile{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:.65rem .85rem;display:flex;flex-direction:column;gap:.2rem}.res-time-tile.return-tile{border-left:3px solid var(--primary-color, #3b82f6)}.res-tile-label{font-size:.75rem;color:var(--text-color-secondary);font-weight:500}.res-tile-value{font-size:.92rem;color:var(--text-color);font-weight:600}.res-items-container{display:flex;flex-direction:column;gap:.5rem}.res-item-row{background:var(--surface-color);border:1px solid var(--border-color);border-radius:10px;padding:.65rem .85rem;display:flex;flex-direction:column;gap:.5rem;transition:background-color .15s ease}.res-item-main{display:flex;align-items:center;gap:.75rem}.res-item-img{width:38px;height:38px;min-width:38px;border-radius:8px;overflow:hidden;background:#ffffff0d;border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;padding:2px}.res-item-img img{width:100%;height:100%;object-fit:contain}.res-misc-icon,.res-room-icon{color:var(--primary-color-light, #60a5fa);background:#3b82f61a}.res-item-info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:.15rem}.res-item-title-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.res-item-name{font-size:.95rem;font-weight:600;color:var(--text-color)}.res-badge-kit{font-size:.65rem;font-weight:700;background:linear-gradient(135deg,#6366f140,#4f46e559);color:#a5b4fc;border:1px solid rgba(99,102,241,.35);padding:.1rem .4rem;border-radius:4px}.res-badge-qty{font-size:.75rem;font-weight:700;color:var(--primary-color-light, #60a5fa);background:var(--surface-color-inset);border:1px solid var(--border-color);padding:.1rem .45rem;border-radius:10px}.res-badge-unit{font-size:.75rem;font-weight:600;color:#38bdf8;background:#0ea5e91f;border:1px solid rgba(14,165,233,.25);padding:.1rem .45rem;border-radius:6px}.res-badge-misc,.res-badge-space{font-size:.68rem;font-weight:700;color:#e2e8f0;background:#ffffff14;border:1px solid rgba(255,255,255,.15);padding:.1rem .4rem;border-radius:4px}.res-item-meta{font-size:.78rem;color:var(--text-color-secondary);display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.res-item-note{color:#94a3b8;font-style:italic}.res-kit-accordion-wrap{border-top:1px solid rgba(255,255,255,.06);padding-top:.35rem}.res-kit-accordion{font-size:.82rem}.res-kit-accordion summary{cursor:pointer;color:var(--text-color-secondary);display:flex;align-items:center;justify-content:space-between;-webkit-user-select:none;user-select:none;padding:.2rem 0;list-style:none}.res-kit-accordion summary::-webkit-details-marker{display:none}.res-kit-accordion summary:hover{color:var(--text-color)}.res-kit-chevron{transition:transform .2s ease}.res-kit-accordion[open] .res-kit-chevron{transform:rotate(180deg)}.res-kit-subitems-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.4rem;margin-top:.5rem;padding:.5rem;background:var(--surface-color-inset);border-radius:8px;border:1px solid rgba(255,255,255,.05)}.res-kit-subitem{display:flex;align-items:center;gap:.45rem;padding:.3rem;border-radius:6px;background:var(--surface-color);border:1px solid var(--border-color);min-width:0}.res-sub-img{width:22px;height:22px;min-width:22px;border-radius:4px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#ffffff0d}.res-sub-img img{width:100%;height:100%;object-fit:contain}.res-sub-name{font-size:.76rem;color:var(--text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto;min-width:0}.res-sub-qty{font-size:.7rem;font-weight:700;color:var(--primary-color-light, #60a5fa);flex-shrink:0}.res-sub-unit{font-size:.7rem;color:var(--text-color-secondary);flex-shrink:0}.res-note-callout{background:var(--surface-color-inset);border:1px solid var(--border-color);border-left:3px solid #3b82f6;border-radius:8px;padding:.75rem 1rem;display:flex;flex-direction:column;gap:.25rem}.res-note-callout.is-denial{border-left-color:#ef4444;background:#ef444414}.res-note-header{display:flex;align-items:center;gap:.45rem;font-size:.85rem;color:var(--text-color)}.res-note-callout p{margin:0;font-size:.85rem;color:var(--text-color-secondary);line-height:1.4}.res-card-footer-actions{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;flex-wrap:wrap;padding-top:.75rem;border-top:1px solid var(--border-color)}.res-card-footer-actions .btn{display:inline-flex;align-items:center;gap:.4rem}.btn-danger-text:hover{color:#f87171!important;border-color:#ef444466!important}.res-card-skeleton{background:var(--surface-color);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.res-card-skeleton .skeleton-row{height:24px;border-radius:6px}.res-card-skeleton .skeleton-row.short{width:60%}.settings-section{background:var(--surface-color);padding:1.5rem;border-radius:12px;margin-bottom:2rem}.settings-section h2{margin-top:0;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.settings-subsection-title{margin-top:2rem;font-size:1.1rem;font-weight:500}.my-checkout-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--surface-color-inset);border-radius:8px;margin-bottom:.5rem}.my-checkout-item.overdue{border-left:4px solid var(--danger-color)}.my-checkout-item .item-name{font-weight:500}.my-checkout-item .item-due-date{font-size:.85rem;color:var(--text-color-secondary)}.my-checkout-item-status{font-weight:500;font-size:.8rem}.my-checkout-item-status.overdue{color:var(--danger-color)}.my-checkout-item-status.due-soon{color:var(--pending-color)}#certifications-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.certification-item{padding:.5rem 1rem;background:var(--surface-color-inset);border-radius:99px;font-size:.9rem}.settings-footer{position:sticky;bottom:0;left:0;width:100%;background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-top:1px solid var(--border-color);padding:1rem 0;z-index:100;transform:translateY(100%);transition:transform .3s ease-in-out}.settings-footer.visible{transform:translateY(0)}.settings-footer-content{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:flex;justify-content:flex-end;align-items:center;gap:1.5rem}.settings-footer-content p{margin:0;color:var(--text-color-secondary)}.reservation-sidebar{position:fixed;top:0;right:-350px;width:350px;height:100%;background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-left:1px solid var(--border-color);display:flex;flex-direction:column;z-index:1000;transition:right .4s cubic-bezier(.4,0,.2,1)}.reservation-sidebar.visible{right:0}.sidebar-header{padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.sidebar-header h3{margin:0;font-size:1.1rem}#close-sidebar-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-color-secondary);line-height:1}#close-sidebar-btn:hover{color:var(--text-color)}.sidebar-content{flex-grow:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:2rem}#wizard-container{overflow:hidden;width:100%}#wizard-steps-wrapper{display:flex;width:500%;transition:transform .4s cubic-bezier(.4,0,.2,1)}.wizard-step{width:20%;flex-shrink:0}.wizard-step h4{font-size:1rem;font-weight:500;margin-bottom:1rem}.wizard-nav{display:flex;justify-content:space-between;margin-top:1rem}.wizard-summary{background:var(--surface-color-inset);padding:1rem;border-radius:8px}.wizard-summary p{margin:0 0 .5rem}.sidebar-cart-list h4{font-size:1rem;font-weight:500;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.sidebar-cart-list .sidebar-empty{text-align:center;color:var(--text-color-secondary);font-size:.9rem;padding:1rem 0}.sidebar-cart-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.sidebar-item-info{display:flex;flex-direction:column}.sidebar-item-info .name{font-weight:500}.sidebar-item-info .unit-select-link{font-size:.8rem;color:var(--accent-color-text);background:none;border:none;padding:0;cursor:pointer;text-decoration:underline}.remove-sidebar-item{background:none;border:none;font-size:1.25rem;color:var(--danger-color);cursor:pointer}.sidebar-footer{padding:1.5rem;border-top:1px solid var(--border-color);background:#0000001a;flex-shrink:0}#submit-sidebar-reservation{width:100%}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1rem;color:var(--text-color-secondary);background:var(--surface-color-inset);border-radius:12px;margin-top:2rem}.empty-state svg{width:64px;height:64px;margin-bottom:1.5rem;opacity:.5}.empty-state h2{font-size:1.25rem;color:var(--text-color);margin-bottom:.5rem;font-weight:500}.empty-state p{margin:0;max-width:400px;line-height:1.5}@media(min-width:1280px){.main-content:not(.main-content--wide){zoom:.8}}@media(max-width:900px){.student-dashboard-layout{grid-template-columns:1fr}.dashboard-side-column{position:static;order:-1}}@media(max-width:768px){.main-content{padding:0 1rem;margin:1.5rem auto}.main-content--wide{padding:0 1rem}.subcategory-item-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.65rem}.reservation-sidebar{width:100%;right:-100%}.reservation-sidebar.visible{right:0}.wizard-nav{flex-direction:column-reverse;gap:1rem}.wizard-nav button{width:100%}}.manager-layout{display:flex;height:125vh}#manager-sidebar{width:240px;background-color:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-right:1px solid var(--glass-border-bottom);display:flex;flex-direction:column;transition:width .3s ease;box-shadow:4px 0 15px #0000000d}#manager-content{flex-grow:1;overflow-y:auto;display:flex;flex-direction:column}.sidebar-header{padding:1rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:.75rem}.sidebar-logo{height:35px;width:35px;object-fit:contain}.sidebar-title{font-size:1.1rem;font-weight:500}.sidebar-nav{list-style:none;padding:1rem 0;flex-grow:1}.sidebar-nav-link{display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;color:var(--text-color-secondary);text-decoration:none;font-weight:500;font-size:.9rem;border-left:3px solid transparent;transition:all .2s ease}.sidebar-nav-link:hover{color:var(--text-color);background-color:#ffffff08}.sidebar-nav-link.active{color:var(--accent-color-text);background-color:#0033851a;border-left-color:var(--primary-color)}.sidebar-nav-icon{width:20px;height:20px;flex-shrink:0}.sidebar-nav-icon svg{width:100%;height:100%}.sidebar-footer{padding:1rem;border-top:1px solid var(--border-color)}.sidebar-toggle-btn{width:100%;background:var(--surface-color-inset);border:1px solid var(--border-color);color:var(--text-color-secondary);padding:.6rem .75rem;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.85rem;font-weight:500;transition:all .2s ease}.sidebar-toggle-btn:hover{background:var(--surface-color);color:var(--text-color);border-color:var(--primary-color)}.sidebar-toggle-btn svg{width:18px;height:18px;flex-shrink:0}.sidebar-toggle-btn .expand-icon{display:none}.sidebar-collapsed #manager-sidebar{width:80px}.sidebar-collapsed .sidebar-title,.sidebar-collapsed .sidebar-nav-link .animated-link-container,.sidebar-collapsed .sidebar-toggle-btn .toggle-text,.sidebar-collapsed .notification-badge,.sidebar-collapsed .sidebar-toggle-btn .collapse-icon{display:none}.sidebar-collapsed .sidebar-toggle-btn .expand-icon{display:block}.sidebar-collapsed .sidebar-header,.sidebar-collapsed .sidebar-nav-link{justify-content:center}.manager-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);background-color:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);position:sticky;top:0;z-index:100}.manager-header h1{font-size:1.5rem;font-weight:500}.manager-header .header-actions{display:flex;gap:.75rem}.tab-content{display:none;padding:1.5rem}.tab-content.active{display:block}.clickable{cursor:pointer;text-decoration:underline;text-decoration-color:transparent;transition:text-decoration-color .2s}.clickable:hover{text-decoration-color:currentColor}.manager-card.overdue{border-left:4px solid var(--danger-color)}.requests-header,.inventory-header,.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.requests-header h2,.inventory-header h2,.settings-header h2{margin:0;font-size:1.25rem}.history-export-controls{display:flex;align-items:center;gap:.75rem}.history-export-controls span{color:var(--text-color-secondary)}.history-export-controls input[type=date]{background-color:var(--surface-color-inset);border:1px solid var(--border-color);color:var(--text-color);border-radius:8px;padding:.5rem .75rem;font-family:inherit;font-size:.85rem;color-scheme:dark;transition:border-color .2s}.history-export-controls input[type=date]:focus{outline:none;border-color:var(--primary-color)}.history-export-controls input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.8);cursor:pointer;transition:filter .2s}.history-export-controls input[type=date]::-webkit-calendar-picker-indicator:hover{filter:invert(1)}.inventory-view{display:flex;gap:1rem;height:calc((100vh - 200px) / var(--zoom-factor))}.inventory-column{flex:1;background:var(--surface-color-inset);border-radius:12px;display:flex;flex-direction:column;overflow:hidden;animation:fade-in-up .4s ease-out;border:1px solid transparent;border-top-color:var(--glass-border-top);border-left-color:var(--glass-border-top);border-right-color:var(--glass-border-bottom);border-bottom-color:var(--glass-border-bottom)}@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.inventory-column.full-width{flex-basis:100%}.column-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.column-header h3{font-size:1rem;margin:0}.column-header .btn-icon{background:none;border:none;font-size:1.5rem;color:var(--text-color-secondary);cursor:pointer}.inventory-list{overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:.5rem}.list-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border-radius:6px;cursor:pointer;transition:background-color .2s,border-color .2s,transform .2s ease;background-color:#ffffff08;border:1px solid transparent;gap:1rem}.list-item>span{min-width:0;flex-grow:1}.list-item:hover{background-color:#ffffff0d;border-color:var(--border-color);transform:translateY(-2px)}.list-item.active{background-color:var(--primary-color);color:var(--white)}.list-item .item-actions{display:flex;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;gap:.5rem;flex-shrink:0}.list-item:hover .item-actions,.list-item.active .item-actions{opacity:1;visibility:visible}.list-item.active .item-actions button{background-color:#ffffff1a;color:var(--white);border-color:#fff3}.list-item.dragging{opacity:.4;background:var(--primary-color)}.list-item-placeholder{background:#0051cd33;border:1px dashed var(--primary-color);border-radius:6px;margin:0 .5rem}.inventory-column.ordering-mode .list-item{cursor:grab}.inventory-column.ordering-mode .list-item:active{cursor:grabbing}.column-header-actions{display:flex;gap:.5rem;align-items:center}.subcategory-order-actions{padding:1rem .5rem .5rem;display:flex;justify-content:flex-end;gap:.5rem;border-top:1px solid var(--border-color);margin-top:.5rem}.spreadsheet-top-bar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.spreadsheet-controls{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;flex-grow:1;justify-content:space-between}.spreadsheet-view-controls{display:flex;align-items:center;gap:.5rem}.dropdown-menu-container{position:relative;display:inline-block}.dropdown-menu{position:absolute;top:100%;right:0;margin-top:.5rem;background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 10px 25px #0000004d;padding:1rem;z-index:1000;width:300px;max-height:400px;overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .2s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.dropdown-menu-trigger{background:var(--surface-color-inset);border:1px solid var(--border-color);color:var(--text-color);padding:.5rem 1rem;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s}.dropdown-menu-trigger:hover{background:var(--hover-color);border-color:var(--primary-color)}.dropdown-menu-section{margin-bottom:1rem;border-bottom:1px solid var(--border-color);padding-bottom:1rem}.dropdown-menu-section:last-child{margin-bottom:0;border-bottom:none;padding-bottom:0}.dropdown-menu-section-title{font-size:.85rem;font-weight:600;color:var(--text-color-secondary);margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.05em}.dropdown-menu-item{display:flex;align-items:center;gap:.75rem;padding:.35rem 0}.dropdown-menu-item label{cursor:pointer;font-size:.9rem;flex-grow:1}.applied-filters-container{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;width:100%;padding:.5rem 0}.filter-pill{display:inline-flex;align-items:center;gap:.5rem;background:var(--surface-color-inset);border:1px solid var(--border-color);padding:.25rem .75rem;border-radius:99px;font-size:.8rem}.filter-pill .key{font-weight:500;color:var(--text-color-secondary)}.filter-pill .value{color:var(--text-color)}.filter-pill .remove-pill-btn{background:none;border:none;color:var(--text-color-secondary);cursor:pointer;font-size:1rem;line-height:1;padding:.2rem}.filter-pill .remove-pill-btn:hover{color:var(--danger-color)}.clear-filters-btn{background:none;border:none;color:var(--accent-color-text);text-decoration:underline;cursor:pointer;font-size:.8rem}#spreadsheet-search-input,#spreadsheet-category-filter,#showcase-search-input,#filter-status-select{background-color:var(--surface-color-inset);border:1px solid var(--border-color);border-radius:8px;padding:.6rem 1rem;color:var(--text-color);font-size:.9rem;font-family:inherit;transition:border-color .2s}#spreadsheet-search-input:focus,#spreadsheet-category-filter:focus,#showcase-search-input:focus,#filter-status-select:focus{outline:none;border-color:var(--primary-color)}#spreadsheet-search-input,#showcase-search-input{flex-grow:1;max-width:450px;width:100%}.spreadsheet-container{width:100%;overflow:auto;border:1px solid var(--border-color);border-radius:8px;max-height:calc((100vh - 280px) / var(--zoom-factor))}.spreadsheet-table th[draggable=true]{cursor:move}.spreadsheet-table th.drag-over{border-right:2px solid var(--primary-color)}.spreadsheet-table tbody tr:nth-child(2n){background-color:#ffffff05}.spreadsheet-table tbody tr:hover{background-color:#ffffff0d}.spreadsheet-table td input[type=checkbox]{display:block;margin:0 auto}.spreadsheet-table td input,.spreadsheet-table td select{width:100%;height:100%;border:1px solid var(--primary-color);background:var(--background-color);color:var(--text-color)}.dropdown-menu-item .btn-group label.btn{padding:.5rem .25rem;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.context-menu{position:fixed;background:#0f172afa;border:1px solid var(--border-color);border-radius:8px;padding:.5rem;z-index:2100;box-shadow:0 5px 15px #0000004d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.context-menu-item{padding:.5rem 1rem;cursor:pointer;border-radius:4px}.context-menu-item:hover{background-color:#ffffff1a}.bento-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:min-content 1fr 1fr;gap:1rem;min-height:calc((100vh - 120px) / var(--zoom-factor));padding-bottom:2rem}.bento-cell{background-color:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;border:1px solid transparent;border-top-color:var(--glass-border-top);border-left-color:var(--glass-border-top);border-right-color:var(--glass-border-bottom);border-bottom-color:var(--glass-border-bottom)}.bento-cell.top-row-1{grid-area:1 / 1 / 2 / 2}.bento-cell.top-row-2{grid-area:1 / 2 / 2 / 3}.bento-cell.top-row-3{grid-area:1 / 3 / 2 / 4}.bento-cell.top-row-4{grid-area:1 / 4 / 2 / 5}.bento-cell.upcoming-returns-card{grid-area:2 / 1 / 4 / 3}.bento-cell.quick-actions-card{grid-area:2 / 3 / 3 / 5}.bento-cell.latest-activity-card{grid-area:3 / 3 / 4 / 5}.stat-card{justify-content:flex-start;align-items:stretch;text-align:left;gap:.75rem;padding:1.25rem 1.5rem}.stat-card-header{display:flex;align-items:center;gap:.65rem}.stat-icon-wrapper{width:34px;height:34px;border-radius:9px;background:#4f80ff1f;color:var(--primary-color-light, #60a5fa);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon-wrapper.icon-danger{background:#ef444426;color:#f87171}.stat-icon-wrapper.icon-warning{background:#f59e0b26;color:#fbbf24}.stat-label{font-size:.85rem;font-weight:600;color:var(--text-color-secondary);letter-spacing:-.01em}.stat-value{font-size:2.75rem;font-weight:700;color:var(--text-color, #f8fafc);line-height:1;margin-top:auto}.stat-card.overdue .stat-value{color:#f87171}.whiteboard-card{padding:1.25rem 1.5rem;gap:.75rem}.whiteboard-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.whiteboard-content-wrapper{max-width:110ch}.whiteboard-editor{min-height:80px;line-height:1.65;font-size:.95rem;color:#e2e8f0;outline:none}.whiteboard-editor.is-editing{background:var(--surface-color-inset);border:1px solid var(--primary-color);border-radius:8px;padding:.75rem}.dashboard-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.dashboard-section-header h4{margin:0;font-size:1rem;font-weight:700;color:var(--text-color);letter-spacing:-.01em}.manager-quick-actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;width:100%}.manager-quick-action-tile{display:flex;align-items:center;gap:.85rem;padding:.9rem 1rem;background:var(--surface-color-inset, rgba(15, 23, 42, .45));border:1px solid var(--border-color, rgba(255, 255, 255, .08));border-radius:10px;cursor:pointer;text-align:left;color:var(--text-color);transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.manager-quick-action-tile:hover{background:#1e293be6;border-color:var(--primary-color-light, #4f80ff);transform:translateY(-2px);box-shadow:0 4px 14px #00000040}.action-tile-icon{width:38px;height:38px;border-radius:9px;background:linear-gradient(135deg,#4f80ff33,#00338559);color:var(--primary-color-light, #60a5fa);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s ease}.manager-quick-action-tile:hover .action-tile-icon{transform:scale(1.08)}.action-tile-text{display:flex;flex-direction:column;gap:.15rem;min-width:0}.action-tile-title{font-size:.88rem;font-weight:600;color:var(--text-color, #f8fafc);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-tile-subtitle{font-size:.74rem;color:var(--text-color-secondary, #94a3b8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upcoming-returns-card h4,.quick-actions-card h4,.latest-activity-card h4{margin-top:0;margin-bottom:1rem;font-size:1rem;color:var(--text-color-secondary);font-weight:500;flex-shrink:0}.activity-item{display:flex;flex-direction:column}.activity-status{font-size:1.1rem;font-weight:500}.activity-item .student-name{font-size:.9rem}.activity-item .activity-time{font-size:.8rem;color:var(--text-color-secondary)}.settings-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.settings-section-manager{background:var(--surface-color);padding:1.5rem;border-radius:12px}.settings-section-manager header{display:flex;justify-content:space-between;align-items:center;padding-bottom:.75rem;margin-bottom:1rem;border-bottom:1px solid var(--border-color)}.settings-section-manager h2{margin:0;font-size:1.25rem}.settings-item-list{display:flex;flex-direction:column;gap:.5rem}.settings-item,.settings-item-group>summary{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:var(--surface-color-inset);border-radius:8px;gap:1rem}.settings-item>span,.settings-item-group>summary>span{min-width:0;flex-grow:1}.item-actions{display:flex;gap:.5rem;flex-shrink:0}.settings-item-group>summary{cursor:pointer}.settings-item-group-content{padding:.5rem .5rem .5rem 1.5rem}.draggable-list{list-style:none;padding:.5rem;margin-top:1rem;background:var(--surface-color-inset);border-radius:8px;display:flex;flex-direction:column;gap:.5rem}.draggable-item{background:var(--surface-color);padding:.75rem 1rem;border-radius:6px;cursor:grab;display:flex;align-items:center;gap:.75rem;-webkit-user-select:none;user-select:none;border:1px solid var(--border-color)}.draggable-item:active{cursor:grabbing}.draggable-item.dragging{opacity:.5;background:var(--primary-color)}.unit-metadata-editor{max-height:250px;overflow-y:auto;background:var(--surface-color-inset);padding:.75rem;border-radius:8px;display:flex;flex-direction:column;gap:.75rem}.unit-metadata-row{display:grid;grid-template-columns:80px 1fr 1fr 24px;gap:1rem;align-items:center}.unit-metadata-row label{font-weight:500;font-size:.9rem;text-align:right;color:var(--text-color-secondary)}.unit-metadata-row input{font-size:.9rem;padding:.5rem}.maintenance-section-details{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.maintenance-section-details summary{font-size:1.1rem;font-weight:500;cursor:pointer;list-style:none}.maintenance-section-details summary::-webkit-details-marker{display:none}.maintenance-report-form{margin-top:1rem;background-color:var(--surface-color-inset);padding:1rem;border-radius:8px}#maintenance-student-search-results{position:relative;max-height:150px;overflow-y:auto;background:var(--surface-color);border-radius:6px;margin-top:4px;padding:.5rem;list-style:none}#maintenance-student-search-results li{padding:.5rem;border-radius:4px;cursor:pointer}#maintenance-student-search-results li:hover{background-color:var(--primary-color)}.calendar-container{background:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column}.calendar-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid var(--border-color)}.calendar-header h2{margin:0;font-size:1.25rem;font-weight:500}.calendar-nav{display:flex;gap:.5rem}.calendar-nav button{background:var(--surface-color-inset);border:1px solid var(--border-color);color:var(--text-color-secondary);padding:.4rem .8rem;border-radius:6px;cursor:pointer;transition:background-color .2s,color .2s}.calendar-nav button:hover{background-color:var(--surface-color-hover);color:var(--text-color)}.calendar-grid-wrapper{display:flex;flex-direction:column;gap:5px;flex-grow:1}.calendar-week-headers,.calendar-week{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-week{position:relative;flex-grow:1;min-height:120px}.calendar-day-header{text-align:center;font-size:.8rem;font-weight:500;color:var(--text-color-secondary);padding-bottom:.5rem}.calendar-day{background:var(--surface-color-inset);border-radius:8px;min-height:120px;padding:.5rem;display:flex;flex-direction:column;border:1px solid transparent;transition:border-color .2s}.calendar-day:hover{border-color:var(--border-color)}.calendar-day .day-number{font-weight:500;margin-left:auto;font-size:.85rem}.calendar-day.not-current-month{opacity:.4;background:transparent}.calendar-day.today{background-color:#0033851a;border:1px solid var(--primary-color)}.calendar-day.today .day-number{color:var(--accent-color-text)}.week-events-layer{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;overflow:hidden}.calendar-event.event-bar{position:absolute;height:20px;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;color:var(--white);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;pointer-events:auto;transition:transform .2s,box-shadow .2s;box-sizing:border-box;display:flex;align-items:center}.calendar-event.event-bar:hover{transform:scale(1.02);box-shadow:0 2px 5px #0003;z-index:10}.calendar-event.event-bar.span-start{border-top-right-radius:0;border-bottom-right-radius:0}.calendar-event.event-bar.span-end{border-top-left-radius:0;border-bottom-left-radius:0}.calendar-event.event-bar.span-middle{border-radius:0}.calendar-event.event-pending{background-color:var(--pending-color)}.calendar-event.event-checked-out{background-color:var(--primary-color)}.calendar-event.event-returned{background-color:var(--success-color)}.sidebar-nav-link{position:relative}.notification-badge{position:absolute;right:1.5rem;top:50%;transform:translateY(-50%) scale(0);background-color:var(--brand-red);color:var(--white);width:22px;height:22px;border-radius:50%;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;animation:badge-pop .3s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes badge-pop{to{transform:translateY(-50%) scale(1)}}.notification-badge[hidden]{display:none!important}.pulse-timeline{display:flex;flex-direction:column;gap:1rem;padding:.5rem 0}.pulse-item{display:flex;align-items:flex-start;gap:1rem;position:relative;padding-bottom:1rem}.pulse-item:last-child{padding-bottom:0}.pulse-item:before{content:"";position:absolute;left:19px;top:40px;bottom:0;width:2px;background-color:var(--border-color)}.pulse-item:last-child:before{display:none}.pulse-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background-color:var(--surface-color-inset);border:1px solid var(--border-color);color:var(--text-color-secondary);z-index:1}.pulse-icon.pickup{background-color:#3b82f61a;color:#3b82f6;border-color:#3b82f64d}.pulse-icon.return{background-color:#10b9811a;color:var(--success-color);border-color:var(--success-color)}.pulse-icon.student{background-color:#06b6d41a;color:#06b6d4;border-color:#06b6d44d}.pulse-icon.maintenance{background-color:#f59e0b1a;color:var(--pending-color);border-color:var(--pending-color)}.pulse-icon.reservation,.pulse-icon.reservation-created{background-color:#8b5cf61a;color:#8b5cf6;border-color:#8b5cf64d}.pulse-content{flex-grow:1;background-color:var(--surface-color-inset);padding:.75rem 1rem;border-radius:8px;border:1px solid var(--border-color)}.pulse-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.pulse-time{font-size:.8rem;color:var(--text-color-secondary);font-weight:500}.pulse-title{font-weight:600;font-size:.95rem;margin:0}.pulse-subtitle{font-size:.85rem;color:var(--text-color-secondary);margin:0}.approval-queue-list{display:flex;flex-direction:column;gap:.75rem;max-height:300px;overflow-y:auto}.approval-card{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background-color:var(--surface-color-inset);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:transform .2s,border-color .2s}.approval-card:hover{transform:translate(4px);border-color:var(--primary-color)}.approval-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background-color:#ffffff0d;color:var(--text-color)}.approval-info{flex-grow:1;min-width:0}.approval-title{font-weight:600;font-size:.9rem;margin:0 0 .2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.approval-meta{font-size:.8rem;color:var(--text-color-secondary);display:flex;align-items:center;gap:.5rem}.approval-type-badge{font-size:.7rem;padding:.1rem .4rem;border-radius:4px;background-color:#ffffff1a;text-transform:uppercase;font-weight:600}.approval-type-badge.reservation{color:var(--primary-color);background-color:#0033851a}.approval-type-badge.production{color:#db2777;background-color:#db27771a}.approval-type-badge.showcase{color:#9333ea;background-color:#9333ea1a}.notification-badge:not([hidden]){transform:translateY(-50%) scale(1)}@media(min-width:1280px){#manager-content{zoom:.8;--zoom-factor: .64}}#tab-showcase.active,#tab-showcase .modal-tab-content.active{display:flex!important;flex-direction:column;flex:1;min-height:0}.whiteboard-card{display:flex;flex-direction:column;gap:0;min-height:300px}.whiteboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:0 .5rem}.whiteboard-header h4{margin:0;font-size:1rem;color:var(--text-color-secondary);font-weight:500}.whiteboard-actions{display:flex;gap:.5rem}.whiteboard-toolbar{display:flex;gap:.25rem;padding:.5rem;background:var(--surface-color-inset);border:1px solid var(--border-color);border-bottom:none;border-radius:8px 8px 0 0;align-items:center;margin-top:.5rem}.whiteboard-toolbar .btn-icon-sm{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;color:var(--text-color-secondary);border-radius:4px;cursor:pointer;font-size:.9rem;font-family:serif}.whiteboard-toolbar .btn-icon-sm:hover{background:#ffffff1a;color:var(--text-color)}.whiteboard-toolbar .toolbar-separator{width:1px;height:16px;background:var(--border-color);margin:0 .25rem}.whiteboard-editor{flex-grow:1;min-height:200px;max-height:400px;padding:1rem;border-radius:8px;outline:none;white-space:pre-wrap;color:var(--text-color);font-family:inherit;line-height:1.6;transition:all .2s ease;border:1px solid transparent;overflow-y:auto}.whiteboard-editor:not([contenteditable=true]){background:#ffffff05;border-color:#ffffff0d}.whiteboard-editor.is-editing{border:1px solid var(--border-color);border-radius:0 0 8px 8px;background:var(--surface-color-inset);box-shadow:inset 0 2px 4px #0000001a}.whiteboard-editor:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #0033851a}.bulk-actions-bar{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);border-radius:12px;padding:.75rem 1.5rem;display:flex;align-items:center;gap:1.5rem;z-index:101;box-shadow:var(--shadow-interactive);transition:transform .3s ease-in-out,opacity .3s ease-in-out}.bulk-actions-bar[hidden]{transform:translate(-50%,150%);opacity:0;visibility:hidden}#bulk-actions-count{font-weight:500;color:var(--text-color)}.bulk-actions-buttons{display:flex;gap:.75rem}.spreadsheet-table th:first-child,.spreadsheet-table td:first-child{width:60px!important;text-align:center}.spreadsheet-table input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary-color)}.history-details-modal-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid var(--border-color)}.history-details-student h3{margin:0;font-size:1.25rem;font-weight:500}.history-details-student .student-email{font-size:.8rem;color:var(--text-color-secondary)}.status-badge.large .badge-part{padding:.4rem .8rem;font-size:.8rem}.status-badge.info .badge-left{color:var(--accent-color-text)}.history-details-body{display:flex;flex-direction:column;gap:1.5rem}.history-details-section{background:var(--surface-color-inset);padding:1rem;border-radius:8px}.history-details-section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;color:var(--text-color-secondary)}.history-details-section-header svg{width:20px;height:20px}.history-details-section-header h4{margin:0;font-size:1rem;font-weight:500;color:var(--text-color)}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.detail-item{display:flex;flex-direction:column}.detail-label{font-size:.8rem;font-weight:500;color:var(--text-color-secondary);margin-bottom:.25rem}.detail-value{font-size:.9rem;color:var(--text-color)}.history-details-section .items-list-container ul,.history-details-section .card-items-list ul{list-style:none;padding:0;margin:0}.history-details-section .card-items-list li{padding:.4rem 0;border-bottom:1px solid var(--border-color)}.history-details-section .card-items-list li:last-child{border-bottom:none}.history-details-section .card-items-list .card-bundle-accordion{margin-top:0}.history-details-section .card-items-list .card-bundle-accordion summary{padding:.4rem 0}.history-details-section .card-items-list .card-bundle-accordion ul{padding-left:1rem;margin-top:0;border-top:1px solid var(--border-color)}.denial-section{background:#e526261a;border:1px solid rgba(229,38,38,.2)}.denial-section .history-details-section-header{color:var(--danger-color)}.denial-section p{font-style:italic;color:var(--text-color)}.event-manager .em-footer{border-top:1px solid var(--border-color);margin-top:1rem;padding-top:1rem}.em-legend{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;align-items:center}.em-legend-item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-color-secondary)}.em-legend-swatch{width:14px;height:14px;border-radius:4px;border:1px solid rgba(255,255,255,.2)}.update-log-item{padding:.75rem;border-top:1px solid var(--border-color)}.update-log-item:first-child{border-top:none}.update-log-item p{margin:0 0 .5rem;font-size:.9rem}.update-log-item strong{color:var(--text-color-secondary);font-weight:500}.update-log-item ul{font-size:.85rem;padding-left:1.25rem;margin-top:.25rem;color:var(--text-color-secondary)}.item-thumbnail{width:32px;height:32px;border-radius:4px;object-fit:cover;margin-right:.75rem;border:1px solid var(--border-color);background-color:var(--bg-secondary)}.item-thumbnail-placeholder{width:32px;height:32px;border-radius:4px;margin-right:.75rem;overflow:hidden;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color)}.item-thumbnail-placeholder .image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.item-thumbnail-placeholder svg{width:20px;height:20px;color:#fffc}.inventory-item.item-item{display:flex;align-items:center;padding:.5rem .75rem}.inventory-item.item-item span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.detailed-items-list{display:flex;flex-direction:column;gap:.75rem;max-height:400px;overflow-y:auto;padding-right:.5rem}.detail-list-item{display:flex;align-items:center;gap:1rem;background:var(--surface-color-inset);padding:.75rem;border-radius:8px;border:1px solid var(--border-color)}.item-thumbnail{width:50px;height:50px;border-radius:6px;overflow:hidden;flex-shrink:0;border:1px solid var(--border-color);background:var(--bg-secondary);display:flex;align-items:center;justify-content:center}.item-thumbnail img{width:100%;height:100%;object-fit:cover}.item-thumbnail .image-placeholder{width:100%;height:100%}.detail-item-info{display:flex;flex-direction:column;min-width:0}.detail-item-name{font-weight:500;color:var(--text-color)}.detail-item-unit{font-size:.85rem;color:var(--text-color-secondary)}.detail-list-item.bundle-item{display:block}.detail-item-header{margin-bottom:.5rem;font-weight:600}.bundle-contents{padding-left:.75rem;border-left:2px solid var(--border-color);display:flex;flex-direction:column;gap:.5rem}.bundle-sub-item{display:flex;justify-content:space-between;font-size:.9rem}.sub-item-name{color:var(--text-color-secondary)}.sub-item-unit{font-family:monospace;background:#ffffff0d;padding:0 4px;border-radius:4px}.update-log-item{background:var(--surface-color-inset);border:1px solid var(--border-color);border-radius:8px;padding:1rem;margin-bottom:1rem;font-size:.95rem}.update-log-item:last-child{margin-bottom:0}.update-header{display:flex;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.update-author{color:var(--text-color-secondary);font-size:.85rem}.update-subsection{margin-top:.75rem}.subsection-title{font-weight:600;font-size:.85rem;text-transform:uppercase;color:var(--text-color-secondary);margin-bottom:.5rem;margin-top:0}.bundle-details{width:100%}.bundle-summary{display:flex;align-items:center;gap:1rem;cursor:pointer;list-style:none;padding-bottom:.5rem}.bundle-summary::-webkit-details-marker{display:none}.bundle-summary .item-thumbnail{border:1px solid var(--border-color)}.bundle-summary .detail-item-info{flex-grow:1}.bundle-placeholder{display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);color:var(--text-color-secondary);font-size:.75rem;font-weight:500}.bundle-summary .chevron-icon{width:20px;height:20px;color:var(--text-color-secondary);transition:transform .2s ease}.bundle-details[open] .bundle-summary .chevron-icon{transform:rotate(180deg)}.bundle-details[open] .bundle-contents{margin-top:.5rem;padding-left:1rem;border-left:2px solid var(--border-color)}.info-text{margin:0;color:var(--accent-color-text)}.mobile-only-action{display:none!important}.kanban-board{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding-bottom:2rem;height:calc((100vh - 200px) / var(--zoom-factor));overflow-x:auto}.kanban-column{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);display:flex;flex-direction:column;min-width:300px;height:100%}.kanban-column-header{padding:1rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background:#ffffff05}.kanban-column-title{font-size:1rem;font-weight:600;color:var(--text-color);display:flex;align-items:center;gap:.5rem}.kanban-column-count{background:#ffffff1a;padding:.1rem .5rem;border-radius:1rem;font-size:.75rem;color:var(--text-color-secondary)}.kanban-column-body{padding:1rem;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.kanban-card{background:#ffffff08;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;cursor:grab;transition:all .2s ease;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.kanban-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--text-color-secondary)}.kanban-card:hover{background:#ffffff0f;transform:translateY(-2px);box-shadow:var(--shadow-ambient)}.kanban-card:active{cursor:grabbing;color:var(--text-color);margin-bottom:.25rem}.kanban-card-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.25rem}.kanban-card-title{font-weight:600;color:var(--text-color);line-height:1.2;font-size:1rem;flex:1;min-width:0}.kanban-card-avatars{display:flex;align-items:center;flex-shrink:0;padding-left:8px}.kanban-card-avatar{width:28px;height:28px;border-radius:50%;background:var(--bg-color-secondary);display:flex;align-items:center;justify-content:center;border:2px solid var(--surface-color);overflow:hidden;margin-left:-8px;position:relative;z-index:1}.kanban-card-avatar:first-child{margin-left:0;z-index:0}.kanban-card-avatar.secondary{z-index:2}.kanban-card-avatar svg{width:100%;height:100%;object-fit:cover}.kanban-card-subtitle{font-size:.8rem;color:var(--text-color-secondary);margin-bottom:.75rem}.kanban-card-meta{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:var(--text-color-secondary)}.kanban-card-date{display:flex;align-items:center;gap:.3rem}.kanban-card[data-status=Pending]:before{background:var(--pending-color)}.kanban-card[data-status=Approved]:before{background:var(--approved-color)}.kanban-card[data-status=CheckedOut]:before{background:var(--success-color)}.kanban-card.dragging{opacity:.5;background:#ffffff1a;box-shadow:var(--shadow-interactive)}.kanban-column-body.drag-over{background:#ffffff0d;border-radius:var(--radius-md)}#kanban-checkin-zone{transition:opacity .25s ease,border-color .25s ease,box-shadow .25s ease;border:2px dashed var(--border-color);border-radius:var(--border-radius);padding:1.5rem;text-align:center;margin-top:1rem}#kanban-checkin-zone .drop-zone.drag-over-checkin{border-radius:var(--border-radius);background:rgba(var(--success-color-rgb, 16, 185, 129),.08);box-shadow:0 0 0 3px rgba(var(--success-color-rgb, 16, 185, 129),.35);animation:checkin-zone-pulse .9s ease-in-out infinite}#kanban-checkin-zone .drop-zone.drag-over-checkin h3{color:var(--success-color)!important;transform:scale(1.04);transition:color .2s ease,transform .2s ease}@keyframes checkin-zone-pulse{0%,to{box-shadow:0 0 0 3px rgba(var(--success-color-rgb, 16, 185, 129),.35)}50%{box-shadow:0 0 0 7px rgba(var(--success-color-rgb, 16, 185, 129),.12)}}.view-toggle-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-color-secondary);padding:.5rem .75rem;border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s ease}.view-toggle-btn:hover,.view-toggle-btn.active{background:#ffffff1a;color:var(--text-color);border-color:#fff3}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.kanban-card{animation:slideIn .3s cubic-bezier(.16,1,.3,1) forwards}.portal-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.portal-header h1,.portal-header h2{margin:0;padding:0;border:none;flex-grow:1}#productions-list-view{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;padding:.5rem}.production-card{background:#ffffff08;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;cursor:pointer;transition:transform .1s ease-out,box-shadow .3s ease,border-color .3s ease;box-shadow:0 4px 6px #0000000d;position:relative}.production-card:hover{box-shadow:0 12px 24px #00000026;border-color:#fff3}.production-card-image{aspect-ratio:16 / 9;width:100%;background-color:var(--surface-color-inset);display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(255,255,255,.05);overflow:hidden}.production-card-image img,.production-card-image svg{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.production-card:hover .production-card-image img{transform:scale(1.05)}.production-card-content{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column;gap:.75rem}.production-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.production-card h3{font-size:1.25rem;margin:0;font-weight:700;color:var(--text-color);letter-spacing:-.02em;line-height:1.2}.paid-status-badge{padding:.35em .75em;border-radius:100px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff;flex-shrink:0;box-shadow:0 2px 4px #0000001a}.paid-status-badge.paid{background:linear-gradient(135deg,#059669,#10b981)}.paid-status-badge.unpaid{background:linear-gradient(135deg,#6b7280,#9ca3af)}.production-card-dates{font-size:.85rem;color:var(--text-color-secondary);font-weight:500;display:flex;align-items:center;gap:.5rem}.production-card-description{font-size:.95rem;color:var(--text-color-secondary);flex-grow:1;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}#productions-management-list{display:flex;flex-direction:column;gap:1rem}.production-manage-item{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;background:#ffffff08;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:12px;gap:1.5rem;transition:background-color .2s}.production-manage-item:hover{background:#ffffff0f}.production-manage-info{display:flex;flex-direction:column;gap:.5rem;align-items:flex-start;flex-grow:1;min-width:0}.production-manage-info .title{font-weight:500;font-size:1.1rem}.production-manage-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.production-manage-info .dates{font-size:.85rem;color:var(--text-color-secondary);margin:0}.production-manage-actions{display:flex;gap:.5rem;flex-shrink:0}.roles-management-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.role-item{display:flex;gap:.75rem;align-items:flex-start;margin-bottom:1rem}.role-item .role-inputs{flex-grow:1;display:flex;flex-direction:column;gap:.5rem}.role-item .role-name-input,.role-item .role-description-input{width:100%;padding:.75rem;border:1px solid var(--border-color);background-color:var(--surface-color-inset);color:var(--text-color);border-radius:8px;font-size:.9rem;font-family:inherit;transition:background-color .2s,border-color .2s}.role-item .role-name-input:focus,.role-item .role-description-input:focus{outline:none;border-color:#00338580;background-color:#0000004d}.role-item .role-description-input{min-height:46px;resize:vertical}.role-item .remove-role-btn{margin-top:.5rem}.applicant-list details{margin-top:.5rem;padding:.5rem;background-color:#0000001a;border-radius:6px}.applicant-list summary{cursor:pointer;font-weight:500}.applicant-item{padding:.5rem 1rem;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border-color)}.applicant-item a{color:var(--accent-color-text);text-decoration:none}.applicant-item a:hover{text-decoration:underline}.production-details-modal-layout{display:flex;gap:2rem;align-items:flex-start}.production-details-image-pane{flex:1 1 40%;position:sticky;top:0;aspect-ratio:2 / 3;border-radius:12px;overflow:hidden;background-color:var(--surface-color-inset);display:flex;align-items:center;justify-content:center}.production-details-image-pane img,.production-details-image-pane svg{width:100%;height:100%;object-fit:contain}.production-details-details-pane{flex:1 1 55%;display:flex;flex-direction:column}.production-master-title{font-size:2rem;margin:0;font-weight:700;line-height:1.1;letter-spacing:-.02em;color:var(--text-color)}.production-details-details-pane .detail-section{margin-bottom:2rem}.production-details-details-pane .detail-section .section-label{color:var(--accent-color-text);font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:.05em;display:block;margin-bottom:.75rem}.production-details-details-pane .detail-section .section-body{margin:0;color:var(--text-color);white-space:pre-wrap;line-height:1.6;font-size:1rem}.producer-names{font-size:1.1rem;font-weight:500;margin:0;color:var(--text-color)}.roles-container{padding-top:1.5rem;border-top:1px solid var(--border-color)}@media(max-width:800px){.production-details-modal-layout{flex-direction:column}.production-details-image-pane{position:static;width:100%;max-height:400px}.production-details-details-pane{max-height:none;overflow-y:visible;padding-right:0}}.production-roles-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:1rem}.production-role-item{display:flex;align-items:flex-start;gap:1rem}.production-role-item input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;margin:0;font:inherit;color:currentColor;width:1.25rem;height:1.25rem;border:1px solid var(--border-color);border-radius:4px;background-color:var(--surface-color-inset);flex-shrink:0;margin-top:.2rem;cursor:pointer;display:grid;place-content:center;transition:background-color .2s,border-color .2s}.production-role-item input[type=checkbox]:before{content:"";width:.75rem;height:.75rem;transform:scale(0);transition:.12s transform ease-in-out;box-shadow:inset 1em 1em var(--primary-color);background-color:var(--primary-color);-webkit-mask-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");mask-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}.production-role-item input[type=checkbox]:checked:before{transform:scale(1)}.production-role-item input[type=checkbox]:checked{background-color:var(--primary-color);border-color:var(--primary-color)}.production-role-item input[type=checkbox]:hover{border-color:var(--accent-color-text)}.production-role-item input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.production-role-item>div{display:flex;flex-direction:column}.production-role-item label{font-weight:500;cursor:pointer}.role-description-display{font-size:.85rem;color:var(--text-color-secondary);margin-top:.25rem;padding-left:.25rem;line-height:1.4}#my-applications-list{display:flex;flex-direction:column;gap:var(--space-sm)}.application-card{background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-md);display:flex;justify-content:space-between;align-items:center;transition:background-color .2s ease}.application-card:hover{background-color:var(--surface-color-hover)}.application-card-info h3{margin:0 0 .25rem;font-size:1rem;font-weight:600}.application-card-info p{margin:0;font-size:.85rem;color:var(--text-color-secondary)}.portal-construction{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 2rem;background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:12px;border:1px solid var(--border-color);max-width:600px;margin:3rem auto}.portal-construction h2{font-size:2rem;margin-bottom:1rem;color:var(--text-color)}.portal-construction p{color:var(--text-color-secondary);margin-bottom:2rem;font-size:1.1rem;line-height:1.6}.portal-construction svg{width:80px;height:80px;color:var(--pending-color);margin-bottom:1.5rem}.hub-layout{display:grid;grid-template-columns:280px 1fr;gap:2.5rem;align-items:start}.hub-sidebar{display:flex;flex-direction:column;gap:1.5rem;position:sticky;top:0}.hub-poster-container{border-radius:12px;overflow:hidden;background:var(--surface-color-inset);border:1px solid var(--border-color);aspect-ratio:2 / 3;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #00000040}.hub-poster-img{width:100%;height:100%;object-fit:cover}.hub-poster-placeholder{display:flex;flex-direction:column;align-items:center;gap:.75rem;color:var(--text-color-secondary);font-size:.9rem;opacity:.6}.hub-meta-section{display:flex;flex-direction:column;gap:.75rem;background:var(--surface-color-inset);border:1px solid var(--border-color);border-radius:10px;padding:1rem}.hub-meta-item{display:flex;align-items:flex-start;gap:.75rem}.hub-meta-item>svg{flex-shrink:0;color:var(--primary-color);margin-top:2px}.hub-meta-item>div{display:flex;flex-direction:column;gap:.15rem;min-width:0}.hub-meta-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-color-secondary)}.hub-meta-value{font-size:.85rem;font-weight:500;color:var(--text-color);word-break:break-word}.hub-folder-section{background:var(--surface-color-inset);border:1px solid var(--border-color);border-radius:10px;padding:1rem}.hub-section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;color:var(--primary-color)}.hub-section-header strong{font-size:.9rem;color:var(--text-color)}.hub-folder-hint{font-size:.8rem;color:var(--text-color-secondary);margin:0 0 .75rem;line-height:1.4}.hub-folder-edit-row{display:flex;gap:.5rem;align-items:center}.hub-folder-input{flex:1;min-width:0;padding:.5rem .75rem;border-radius:6px;border:1px solid var(--border-color);background:var(--surface-color);color:var(--text-color);font-size:.85rem;outline:none;transition:border-color .2s}.hub-folder-input:focus{border-color:var(--primary-color)}.hub-folder-open-btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:.25rem}.hub-main{display:flex;flex-direction:column;gap:1.5rem;min-width:0}.hub-title-block{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.hub-title{font-size:1.8rem;font-weight:700;margin:0;line-height:1.15;letter-spacing:-.02em;color:var(--text-color)}.hub-badge{font-size:.75rem;font-weight:600;padding:.25rem .75rem;border-radius:20px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.hub-badge-paid{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.hub-badge-unpaid{background:#fbbf241a;color:#fbbf24;border:1px solid rgba(251,191,36,.25)}.hub-section{padding:0}.hub-section-label{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--primary-color);margin:0 0 .75rem}.hub-section-subtitle{font-size:.85rem;color:var(--text-color-secondary);margin:-.25rem 0 1rem;line-height:1.4}.hub-description{font-size:.95rem;line-height:1.7;color:var(--text-color);margin:0;white-space:pre-wrap}.hub-description.hub-empty{font-style:italic;color:var(--text-color-secondary)}.hub-empty-text{font-style:italic;color:var(--text-color-secondary);font-size:.9rem}.hub-roles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.hub-role-card{background:var(--surface-color-inset);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem;display:flex;flex-direction:column;gap:1rem;transition:border-color .2s,box-shadow .2s}.hub-role-card:hover{border-color:#ffffff26;box-shadow:0 2px 12px #00000026}.hub-role-card.hub-role-editable{border-color:#5b8def59}.hub-role-card.hub-role-editable:hover{border-color:#5b8def99}.hub-role-header{display:flex;align-items:flex-start;gap:.75rem}.hub-role-icon{width:36px;height:36px;border-radius:8px;background:#5b8def1a;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--primary-color)}.hub-role-info{flex:1;display:flex;flex-direction:column;gap:.15rem;min-width:0}.hub-role-name{font-weight:600;font-size:1rem;color:var(--text-color)}.hub-role-desc{font-size:.8rem;color:var(--text-color-secondary);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hub-access-badge{font-size:.65rem;font-weight:700;padding:.2rem .5rem;border-radius:4px;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;flex-shrink:0;display:inline-flex;align-items:center;gap:.3rem}.hub-access-editor{background:#10b98126;color:#34d399}.hub-access-viewer{background:#ffffff0f;color:var(--text-color-secondary)}.hub-role-stats{display:flex;gap:1.5rem}.hub-stat{display:flex;flex-direction:column}.hub-stat-value{font-size:1.5rem;font-weight:700;color:var(--text-color);line-height:1}.hub-stat-label{font-size:.75rem;color:var(--text-color-secondary);margin-top:.2rem}.hub-role-action-btn{display:inline-flex;align-items:center;gap:.5rem;width:100%;justify-content:center}#modal-container .modal-content.production-workspace-modal,#modal-container .modal-content.role-loadout-modal,#modal-container .modal-content.production-request-modal,#modal-container .modal-content.production-details-modal{width:min(94vw,1100px);max-width:1100px;height:min(90vh,900px)!important;max-height:90vh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}#modal-container .modal-content.role-loadout-modal,#modal-container .modal-content.production-request-modal,#modal-container .modal-content.production-details-modal{max-width:900px}#modal-container .modal-content.production-workspace-modal .modal-body,#modal-container .modal-content.role-loadout-modal .modal-body,#modal-container .modal-content.production-request-modal .modal-body,#modal-container .modal-content.production-details-modal .modal-body{overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;flex:1 1 auto!important;min-height:0!important;padding-right:.5rem;padding-bottom:1.5rem!important;box-sizing:border-box!important}#modal-container .modal-content.role-loadout-modal .loadout-items-list{max-height:none;overflow:visible}.hub-mobile-tabs{display:none;margin-bottom:1rem;width:100%}@media(max-width:800px){#modal-container .modal-content.production-workspace-modal,#modal-container .modal-content.role-loadout-modal,#modal-container .modal-content.production-request-modal,#modal-container .modal-content.production-details-modal{width:96vw!important;max-width:96vw!important;height:min(92dvh,calc(100vh - 40px))!important;max-height:min(92dvh,calc(100vh - 40px))!important;padding:.85rem!important;overflow:hidden!important;overflow-x:hidden!important;display:flex!important;flex-direction:column!important}#modal-container .modal-content.production-workspace-modal .modal-body,#modal-container .modal-content.role-loadout-modal .modal-body,#modal-container .modal-content.production-request-modal .modal-body,#modal-container .modal-content.production-details-modal .modal-body{overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;flex:1 1 auto!important;min-height:0!important;padding:.25rem .25rem 2rem!important;box-sizing:border-box!important}.hub-mobile-tabs{display:flex!important;width:100%!important;box-sizing:border-box!important}.hub-mobile-tabs label{flex:1 1 50%!important;width:50%!important;min-width:0!important;text-align:center!important;padding:.45rem .25rem!important;font-size:.82rem!important;box-sizing:border-box!important}.hub-layout{display:flex!important;flex-direction:column!important;gap:1rem!important;overflow-y:visible!important;max-height:none!important;padding-bottom:1rem!important;width:100%!important}.hub-tab-pane{display:none!important}.hub-tab-pane.active{display:flex!important;flex-direction:column!important;gap:1rem!important}.hub-sidebar{position:static!important;width:100%!important}.hub-poster-container{max-width:180px;margin:0 auto}.hub-title{font-size:1.3rem}.hub-roles-grid{grid-template-columns:1fr!important;gap:.75rem!important}.hub-role-card{padding:1rem!important}.hub-folder-input,.hub-custom-link-row input{font-size:.85rem!important}}#cart-page-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:2rem;align-items:flex-start}@media(max-width:900px){#cart-page-layout{grid-template-columns:1fr;gap:1.5rem}.cart-summary-pane{position:static!important;top:auto!important;padding:1.25rem!important}.cart-summary-list{max-height:none!important}}.cart-summary-pane{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border-top);border-bottom-color:var(--glass-border-bottom);border-radius:16px;padding:1.5rem;position:sticky;top:calc(var(--header-height) + 2rem);box-shadow:var(--shadow-interactive)}.cart-summary-pane h3{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color);letter-spacing:-.01em;background:linear-gradient(135deg,var(--text-color) 0%,var(--text-color-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.cart-summary-list{max-height:60vh;overflow-y:auto;padding-right:.5rem;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb-color) transparent}.cart-summary-list::-webkit-scrollbar{width:6px}.cart-summary-list::-webkit-scrollbar-track{background:transparent}.cart-summary-list::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb-color);border-radius:20px}.cart-bundle-wrapper>summary{list-style:none}.cart-bundle-wrapper>summary::-webkit-details-marker{display:none}.cart-item-group,.summary-cart-item{display:flex;gap:1rem;align-items:center;border-bottom:1px solid var(--border-color);transition:background-color .2s;border-radius:8px;padding:1rem .5rem;margin:0 -.5rem}.cart-item-group .remove-from-cart-btn,.summary-cart-item .remove-from-cart-btn{margin-left:.5rem;flex-shrink:0;width:28px;height:28px;border-radius:50%;border:1px solid transparent;background:transparent;color:var(--text-color-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.cart-item-group:hover,.summary-cart-item:hover{background-color:#ffffff08}.cart-item-group:last-child{border-bottom:none}.cart-bundle-wrapper{border-bottom:1px solid var(--border-color)}.cart-bundle-wrapper .cart-item-group{border-bottom:none}.summary-item-image{width:56px;height:56px;border-radius:10px;background:var(--surface-color-inset);border:1px solid var(--border-color);flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:inset 0 2px 4px #0000001a}.summary-item-image img{width:100%;height:100%;object-fit:contain;padding:4px}.summary-item-info{flex-grow:1;min-width:0}.summary-item-info .name{font-weight:600;font-size:.95rem;line-height:1.4;color:var(--text-color)}.summary-item-info .type{font-size:.75rem;color:var(--text-color-secondary);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}.cart-item-group .remove-from-cart-btn:hover,.summary-cart-item .remove-from-cart-btn:hover{background:var(--surface-color-inset);color:var(--danger-color);border-color:#e5262633}.quantity-controls{display:flex;align-items:center;gap:.25rem;margin-left:auto;margin-right:.5rem;background:var(--surface-color-inset);padding:3px;border-radius:8px;border:1px solid var(--border-color)}.quantity-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;cursor:pointer;color:var(--text-color-secondary);font-size:1rem;line-height:1;padding:0;transition:all .2s}.quantity-btn:hover{background:var(--surface-color);color:var(--text-color);box-shadow:0 1px 2px #0000001a}.quantity-display{font-size:.9rem;font-weight:600;min-width:1.25rem;text-align:center;color:var(--text-color);font-variant-numeric:tabular-nums}.cart-bundle-wrapper{border-bottom:1px solid var(--border-color);margin:0 -.5rem;padding:0 .5rem}.cart-bundle-wrapper:last-child{border-bottom:none}.cart-bundle-wrapper .summary-cart-item{border-bottom:none!important;margin:0;padding-left:0;padding-right:0}.cart-bundle-wrapper[open]{background:linear-gradient(to bottom,rgba(255,255,255,.02),transparent)}.bundle-chevron{color:var(--text-color-secondary);transition:transform .2s}.cart-bundle-wrapper[open] .bundle-chevron{transform:rotate(180deg)}.bundle-items{padding:0 0 1rem 4.5rem;display:flex;flex-direction:column;gap:.75rem;position:relative}.bundle-items:before{content:"";position:absolute;left:2.22rem;top:0;bottom:1rem;width:2px;background:var(--border-color);border-radius:1px}.bundle-subitem{display:flex;align-items:center;gap:.75rem;position:relative}.subitem-image-wrapper,.subitem-image-placeholder{width:36px;height:36px;border-radius:6px;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--surface-color);border:1px solid var(--border-color);box-shadow:0 1px 2px #0000001a;z-index:1}.subitem-image-wrapper img{width:100%;height:100%;object-fit:cover}.subitem-image-placeholder{font-size:.8rem}#date-time-selector-pane{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;min-height:480px}#date-time-card-content{flex-grow:1;display:flex;flex-direction:column;transition:opacity .2s ease-in-out}#date-time-card-content.fade-out{opacity:0}#date-time-card-content h3{font-size:1.25rem;font-weight:500;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color);text-align:center}.dt-content-wrapper{flex-grow:1;display:flex;flex-direction:column}.cart-card-controls{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color);transition:opacity .2s}.cart-card-controls.is-transitioning{pointer-events:none;opacity:.7}.cart-card-controls .back-btn{background:none;border:none;color:var(--text-color-secondary);cursor:pointer;padding:.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color .2s;visibility:hidden;margin-right:auto}.cart-card-controls .back-btn.visible{visibility:visible}.cart-card-controls .back-btn:hover{background-color:var(--surface-color-hover)}.cart-card-controls .back-btn svg{width:24px;height:24px}.final-summary-view{font-size:1rem}.final-summary-view h4{color:var(--text-color-secondary);font-weight:500;margin-bottom:.5rem}.final-summary-view p{font-size:1.25rem;font-weight:500;margin-bottom:1.5rem}#acknowledgment-form{margin-top:1rem}.acknowledgment-list{display:flex;flex-direction:column;gap:1.5rem;background:var(--surface-color-inset);padding:1rem;border-radius:8px;margin-top:1.5rem}.acknowledgment-item{display:flex;align-items:flex-start;gap:1rem}.acknowledgment-item input[type=checkbox]{flex-shrink:0;margin-top:.3rem;width:1.2rem;height:1.2rem;accent-color:var(--primary-color)}.acknowledgment-item label{font-size:.9rem;line-height:1.5}.acknowledgment-item strong{color:var(--accent-color-text)}.checkout-note-input{display:block;width:100%;padding:.4rem .6rem;margin-top:.5rem;border:1px solid var(--border-color);background-color:var(--surface-color-inset);color:var(--text-color);border-radius:6px;font-size:.85rem;font-family:inherit;transition:background-color .2s,border-color .2s}.checkout-note-input:focus{outline:none;border-color:var(--primary-color);background-color:#0000004d}.checkout-note-input::placeholder{color:var(--text-color-secondary);opacity:.7}.edit-bays-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem}.edit-bays-instruction{text-align:center;margin-bottom:1.5rem;color:var(--text-color-secondary);font-style:italic}.edit-bays-header .form-group{margin-bottom:0}#bay-date-picker{background-color:var(--surface-color);border:1px solid var(--border-color);color:var(--text-color);border-radius:8px;padding:.6rem 1rem;font-family:inherit;font-size:.9rem;color-scheme:dark}#edit-bays-timeline-container{background:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;overflow-x:auto;min-height:500px}#edit-bays-timeline-container.loading{display:flex;align-items:center;justify-content:center}.timeline-grid{display:grid;grid-template-columns:60px repeat(5,1fr);position:relative;-webkit-user-select:none;user-select:none}.timeline-hours{grid-column:1 / 2;display:flex;flex-direction:column}.timeline-hour{height:60px;border-top:1px solid var(--brand-red);padding-top:4px;text-align:right;padding-right:10px;font-size:.75rem;color:var(--text-color-secondary)}.timeline-hour:first-child{border-top:none}.timeline-bay-column{position:relative;border-left:1px solid var(--border-color);background:repeating-linear-gradient(to bottom,var(--brand-red) 0,var(--brand-red) 1px,transparent 1px,transparent 60px),repeating-linear-gradient(to bottom,transparent,transparent 29px,rgba(255,255,255,.03) 29px,rgba(255,255,255,.03) 30px);background-position:0 60px,0 0;cursor:cell}.timeline-bay-column:first-of-type{border-left:2px solid var(--border-color)}.timeline-header{grid-column:2 / -1;display:grid;grid-template-columns:repeat(5,1fr);border-bottom:2px solid var(--border-color);margin-left:60px;margin-bottom:5px}.timeline-header-bay{text-align:center;padding:.5rem;font-weight:500;display:flex;flex-direction:column;align-items:center;gap:.5rem}.quick-check-in-btn{width:100%;max-width:120px}.timeline-booking{position:absolute;left:4px;right:4px;background-color:var(--primary-color);border-radius:6px;padding:5px 8px;font-size:.7rem;color:var(--white);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;border:1px solid rgba(0,81,205,.8);box-shadow:0 2px 5px #0003;z-index:5;cursor:default}.timeline-booking.is-own{background-color:var(--success-color);border-color:#28a745cc}.timeline-new-booking-preview{position:absolute;background:#0051cd4d;border:1px dashed var(--primary-color);border-radius:6px;left:2px;right:2px;z-index:10;pointer-events:none;transition:top .05s linear,height .05s linear}.timeline-bay-column.is-selecting{background-color:#0051cd1a;cursor:ns-resize}.view-section{width:100%}.view-section[hidden]{display:none!important}.view-section{width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.rooms-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))!important;gap:1.5rem!important;width:100%!important;max-width:1200px!important;margin:0 auto;box-sizing:border-box}@media(max-width:768px){.rooms-grid{grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr))!important;gap:1rem!important;width:100%!important;max-width:100%!important;padding:0!important;box-sizing:border-box!important}}@media(max-width:480px){.rooms-grid{grid-template-columns:1fr!important;gap:.85rem!important}}.room-card{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-ambient);border:1px solid var(--glass-border-top);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;width:100%;max-width:100%;box-sizing:border-box}.room-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-interactive);border-color:var(--primary-color)}.room-card-image{width:100%;height:180px;object-fit:cover;display:block}.room-card-image-placeholder{width:100%;height:180px;display:flex;align-items:center;justify-content:center;background:var(--surface-color-inset);font-size:3rem}.room-card-content{padding:1rem}.room-card-content h3{margin:0 0 .25rem;font-size:1.1rem;font-weight:500}.under-construction-banner{background:var(--surface-color-inset);padding:2rem;text-align:center;border-radius:12px;margin-bottom:2rem;border:2px dashed var(--border-color)}.under-construction-banner h2{margin:0 0 .5rem;color:var(--warning-color, #ffc107)}.under-construction-banner p{margin:0;color:var(--text-color-secondary)}.rooms-header-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.rooms-header-controls .tabs-container{display:flex;gap:.5rem}.rooms-header-controls .tab-btn.active{background:var(--primary-color);color:var(--white);border-color:var(--primary-color)}.action-buttons-group{display:flex;align-items:center;gap:.75rem}.order-controls{display:flex;gap:.25rem;border-left:1px solid var(--border-color);padding-left:.75rem}.order-controls .btn-icon{opacity:.7;transition:opacity .2s,transform .2s}.order-controls .btn-icon:hover:not(:disabled){opacity:1;transform:translateY(-1px)}.order-controls .btn-icon:disabled{opacity:.2;cursor:not-allowed}#modal-container .modal-content.room-modal-content,#modal-container .modal-content.student-room-modal{width:min(94vw,860px);max-width:860px;max-height:90vh!important}.room-modal-layout{display:flex;flex-direction:column;gap:0;width:100%;overflow-x:hidden}.room-modal-hero{margin:0 0 1rem;border-radius:8px;overflow:hidden;width:100%}.room-modal-hero-image{width:100%;height:170px;max-height:24vh;object-fit:cover;display:block;border-radius:8px}.room-modal-hero-placeholder{width:100%;height:180px;display:flex;align-items:center;justify-content:center;background:var(--surface-color-inset);font-size:3.5rem}.room-modal-details{padding-top:1.25rem}.room-modal-info h3{margin:0 0 .5rem;font-size:1.3rem;font-weight:600}.room-modal-hours-badge{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;color:var(--accent-color-text, var(--primary-color));font-weight:500;margin-bottom:.75rem}.room-modal-description{color:var(--text-color-secondary);font-size:.9rem;line-height:1.5;margin:0}.room-modal-divider{border:0;border-top:1px solid var(--border-color);margin:1.25rem 0}.room-modal-reservation-section h4{margin:0 0 1rem;font-size:1rem;font-weight:500}.room-availability-container{margin:.75rem 0 1rem;padding:.75rem 1rem;background:var(--surface-color-inset);border-radius:8px;border:1px solid var(--border-color)}.room-availability-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.room-availability-legend{display:flex;gap:.75rem;font-size:.75rem;color:var(--text-color-secondary)}.room-legend-item{display:flex;align-items:center;gap:4px}.room-legend-dot{width:10px;height:10px;border-radius:2px;display:inline-block}.room-legend-dot.available{background:var(--success-color);opacity:.7}.room-legend-dot.booked{background:var(--danger-color);opacity:.7}.room-slots-grid{display:flex;flex-wrap:wrap;gap:4px}.room-slot{flex:1 0 auto;min-width:36px;text-align:center;padding:6px 4px;border-radius:4px;font-size:.7rem;font-weight:500;transition:transform .1s ease;-webkit-user-select:none;user-select:none}.room-slot.available{background:#28a74526;color:var(--success-color);border:1px solid rgba(40,167,69,.3)}.room-slot.booked{background:#dc354526;color:var(--danger-color);border:1px solid rgba(220,53,69,.3)}@media(max-width:768px){#modal-container .modal-content.room-modal-content,#modal-container .modal-content.student-room-modal,#modal-container .modal-content.room-schedule-modal{max-width:96vw!important;width:96vw!important;max-height:min(88dvh,calc(100vh - 60px))!important;overflow-x:hidden!important;padding:.85rem!important}.room-modal-layout{width:100%!important;overflow-x:hidden!important}.room-modal-hero{margin:0 0 .65rem!important;border-radius:8px!important;overflow:hidden!important;width:100%!important}.room-modal-hero-image{height:130px!important;border-radius:8px!important}.room-modal-hero-placeholder{height:100px!important;font-size:2.5rem!important}.weekly-grid-wrapper{max-width:100%!important;width:100%!important;overflow-x:hidden!important;box-sizing:border-box!important}.weekly-grid,.weekly-grid.student-read-only{grid-template-columns:32px repeat(7,1fr)!important;width:100%!important;min-width:0!important;box-sizing:border-box!important}.wg-day-header{font-size:.62rem!important;padding:3px 0!important}.wg-time-label{font-size:.58rem!important;padding:1px 2px 0 0!important}.room-day-timeline-bar{width:100%!important;min-width:0!important;box-sizing:border-box!important}.form-group-row#room-time-pickers{flex-direction:column!important;gap:.6rem!important}.room-slots-grid{gap:3px}.room-slot{min-width:30px;font-size:.65rem;padding:4px 2px}}#modal-container .modal-content.room-schedule-modal{max-width:950px}.weekly-grid-editor{margin-top:.5rem}.weekly-grid{display:grid;grid-template-columns:48px repeat(7,1fr);border:1px solid var(--border-color);border-radius:8px;overflow:hidden;user-select:none;-webkit-user-select:none;background:var(--surface-color-inset)}.wg-corner{background:#00000026;border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color)}.wg-day-header{text-align:center;padding:6px 2px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-color-secondary);background:#00000026;border-bottom:1px solid var(--border-color);border-right:1px solid rgba(255,255,255,.03)}.wg-day-header:last-child{border-right:none}.wg-time-label{font-size:.65rem;color:var(--text-color-secondary);text-align:right;padding:2px 6px 0 0;border-right:1px solid var(--border-color);border-top:1px solid rgba(255,255,255,.06);line-height:1;display:flex;align-items:flex-start;justify-content:flex-end}.wg-time-label.half{border-top:1px solid rgba(255,255,255,.02)}.wg-cell{min-height:16px;border-right:1px solid rgba(255,255,255,.03);border-top:1px solid rgba(255,255,255,.06);cursor:pointer;transition:background-color .05s ease}.wg-cell.half-hour{border-top:1px solid rgba(255,255,255,.02)}.wg-cell:last-child{border-right:none}.wg-cell:hover{background:#ffffff14}.wg-cell.selected{background:#28a74559}.wg-cell.selected:hover{background:#28a74580}.room-day-status{margin:.5rem 0 .75rem}.room-closed-notice{display:flex;align-items:center;gap:8px;padding:.75rem 1rem;background:#dc35451a;border:1px solid rgba(220,53,69,.3);border-radius:8px;color:var(--danger-color);font-weight:500;font-size:.9rem}.room-open-notice{display:flex;align-items:center;gap:8px;padding:.75rem 1rem;background:#28a7451a;border:1px solid rgba(40,167,69,.3);border-radius:8px;color:var(--success-color);font-weight:500;font-size:.9rem}@media(max-width:768px){#modal-container .modal-content.room-schedule-modal{max-width:none}.weekly-grid{grid-template-columns:36px repeat(7,1fr)}.wg-day-header{font-size:.6rem;padding:4px 1px}.wg-time-label{font-size:.55rem;padding:1px 3px 0 0}.wg-cell{min-height:14px}}@media(max-width:480px){.rooms-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))!important;gap:.75rem}.room-card-image,.room-card-image-placeholder{height:120px}.room-card-content h3{font-size:.95rem}}.student-read-only .wg-cell{cursor:default}.student-read-only .wg-cell:hover{background:transparent}.student-read-only .wg-cell.selected:hover{background:#28a74559}.section-header-with-toggle{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header-with-toggle h4{margin:0}.weekly-schedule-view{animation:fadeIn .3s ease}.btn-xs{padding:.2rem .5rem;font-size:.7rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.draggable-row{transition:background-color .2s,transform .2s}.draggable-row.dragging{opacity:.4;background:var(--surface-color-inset);transform:scale(.98)}.draggable-row.drag-over{border-top:2px solid var(--primary-color)!important}.drag-handle-cell{width:40px;text-align:center;color:var(--text-color-secondary);font-size:1.2rem;padding-left:.75rem!important}.drag-handle-icon{cursor:grab;-webkit-user-select:none;user-select:none;opacity:.5;transition:opacity .2s,transform .2s;display:inline-block}.drag-handle-icon:hover{opacity:1;transform:scale(1.1)}.drag-handle-icon:active{cursor:grabbing}@media(min-width:1280px){#modal-container .modal-content.room-equipment-modal,#modal-container .modal-content.room-schedule-modal.large-modal{width:calc(94vw / var(--zoom-factor, .8))!important;max-width:calc(1600px / var(--zoom-factor, .8))!important;height:calc(90vh / var(--zoom-factor, .8))!important;max-height:calc(90vh / var(--zoom-factor, .8))!important}}.checkout-inventory-pane{position:relative}.checkout-inventory-pane h4,.checkout-inventory-pane .modal-search{position:sticky;top:0;z-index:10;background:var(--surface-color)}.item-location-text-input{background-color:var(--surface-color-inset, rgba(15, 23, 42, .6))!important;border:1px solid var(--border-color, rgba(255, 255, 255, .12))!important;color:var(--text-color, #f8fafc)!important;border-radius:6px;padding:.35rem .65rem;font-size:.8rem;transition:border-color .2s,background-color .2s,box-shadow .2s}.item-location-text-input:focus{outline:none;border-color:var(--primary-color-light, #4f80ff)!important;background-color:#0f172ad9!important;box-shadow:0 0 0 2px #4f80ff33}.item-location-text-input::placeholder{color:var(--text-color-secondary, #94a3b8);opacity:.6}.unit-checkbox-label{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;cursor:pointer;background:var(--surface-color-inset, rgba(15, 23, 42, .4));color:var(--text-color, #f8fafc);padding:.2rem .5rem;border-radius:4px;border:1px solid var(--border-color, rgba(255, 255, 255, .1));transition:background-color .2s,border-color .2s}.unit-checkbox-label:hover{background:var(--surface-color-hover, rgba(51, 65, 85, .6));border-color:#fff3}.unit-checkbox-label input[type=checkbox]{accent-color:var(--primary-color-light, #4f80ff)}.rooms-list-container{background:var(--surface-color, rgba(30, 41, 59, .7));-webkit-backdrop-filter:var(--glass-blur, blur(12px));backdrop-filter:var(--glass-blur, blur(12px));border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;padding:.5rem;box-shadow:0 4px 20px #0003;overflow-x:auto;margin-top:1rem}.rooms-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.9rem;color:var(--text-color, #f8fafc)}.rooms-table thead th{background:var(--surface-color-inset, rgba(15, 23, 42, .5));color:var(--text-color-secondary, #94a3b8);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:.75rem 1rem;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .12));white-space:nowrap}.rooms-table tbody tr.draggable-row{transition:background-color .15s ease,transform .15s ease}.rooms-table tbody tr.draggable-row:nth-child(2n){background-color:#ffffff04}.rooms-table tbody tr.draggable-row:hover{background-color:#ffffff0d}.rooms-table tbody tr.dragging{opacity:.4;background-color:#4f80ff26!important}.rooms-table tbody tr.drag-over{border-top:2px solid var(--primary-color-light, #4f80ff)}.rooms-table td{padding:.85rem 1rem;vertical-align:middle;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .06))}.rooms-table tbody tr:last-child td{border-bottom:none}.room-drag-handle{cursor:grab;color:var(--text-color-secondary, #64748b);-webkit-user-select:none;user-select:none;font-size:1.1rem;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;transition:color .15s,background-color .15s}.room-drag-handle:hover{color:var(--text-color, #f8fafc);background-color:#ffffff1a}.room-equip-badge{display:inline-flex;align-items:center;padding:.25rem .65rem;border-radius:12px;font-size:.78rem;font-weight:500;background:#4f80ff1f;color:var(--primary-color-light, #60a5fa);border:1px solid rgba(79,128,255,.25)}.room-equip-empty{color:var(--text-color-secondary, #64748b);font-size:.85rem}.showcase-construction{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 2rem;background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:12px;border:1px solid var(--border-color);max-width:600px;margin:3rem auto}.showcase-construction h2{font-size:2rem;margin-bottom:1rem;color:var(--text-color)}.showcase-construction p{color:var(--text-color-secondary);margin-bottom:2rem;font-size:1.1rem;line-height:1.6}.showcase-construction svg{width:80px;height:80px;color:var(--pending-color);margin-bottom:1.5rem}.showcase-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color);flex-wrap:wrap;gap:1rem}#showcase-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.showcase-card{background:var(--surface-color);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.showcase-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-interactive)}.showcase-card-image{aspect-ratio:16 / 9;width:100%;background-color:var(--surface-color-inset);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--border-color)}.showcase-card-image img{width:100%;height:100%;object-fit:cover}.showcase-card-content{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column}.showcase-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.showcase-card h3{margin:0;font-size:1.2rem;font-weight:600}.showcase-card .category{font-size:.85rem;color:var(--text-color-secondary);margin-top:.25rem}.showcase-card-body{flex-grow:1}.showcase-card p{font-size:.9rem;color:var(--text-color-secondary);margin:0;line-height:1.5}.showcase-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;margin-top:1rem;border-top:1px solid var(--border-color);font-size:.85rem;color:var(--text-color-secondary)}.youtube-link{display:inline-flex;align-items:center;gap:.5rem;color:red;text-decoration:none;font-weight:500}.youtube-link:hover{text-decoration:underline}.legal-agreement-box{background-color:var(--surface-color-inset);border:1px solid var(--border-color);padding:1.5rem;border-radius:8px;margin-top:1.5rem}.legal-agreement-box h4{margin-top:0;margin-bottom:1rem;color:var(--text-color);border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.legal-checkbox-group{display:flex;flex-direction:column;gap:1rem}.legal-item{display:flex;gap:.75rem;align-items:flex-start}.legal-item input[type=checkbox]{margin-top:.3rem;width:1.2rem;height:1.2rem;accent-color:var(--primary-color);flex-shrink:0}.legal-item label{font-size:.9rem;line-height:1.5;color:var(--text-color);cursor:pointer}.showcase-manage-details{display:flex;flex-direction:column;gap:1rem}.showcase-manage-details p{margin:0}.certifications-layout{display:flex;gap:1.5rem;height:calc((100vh - 180px) / var(--zoom-factor));min-height:500px}.cert-pane{flex:1 1 0;min-width:0;border:1px solid var(--border-color);border-radius:8px;display:flex;flex-direction:column;overflow:hidden;background:var(--surface-color);box-shadow:var(--shadow-sm)}.cert-pane.available-certs-pane{background:var(--surface-color)}.cert-pane h4{padding:1rem;background:var(--surface-color-inset);margin:0;border-bottom:1px solid var(--border-color);font-size:1rem;font-weight:600}.bundle-pane-content{flex:1;overflow-y:auto;padding:1rem}.bundle-category-accordion{margin-bottom:.5rem;border:1px solid var(--border-color);border-radius:6px;overflow:hidden}.bundle-category-accordion>summary{background:var(--surface-color);padding:.75rem 2.5rem .75rem .75rem;font-weight:600;cursor:pointer;list-style:none;position:relative}.bundle-category-accordion[open]>summary{border-bottom:1px solid var(--border-color);background:var(--surface-color-hover)}.bundle-subcategory-accordion{margin:.5rem;border:1px solid var(--border-color);border-radius:4px}.bundle-subcategory-accordion>summary{padding:.5rem 2.5rem .5rem .5rem;cursor:pointer;background:var(--surface-color-inset);position:relative;display:flex;justify-content:space-between;align-items:center}.bundle-category-accordion>.bundle-accordion-content,.bundle-subcategory-accordion>.bundle-accordion-content{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease-out,padding .3s ease-out;padding:0 .5rem;overflow:hidden}.bundle-category-accordion[open]>.bundle-accordion-content,.bundle-subcategory-accordion[open]>.bundle-accordion-content{grid-template-rows:1fr;padding:.5rem}.bundle-accordion-content>div{min-height:0}.bundle-category-accordion>summary:before,.bundle-subcategory-accordion>summary:before{content:"▸";position:absolute;right:1rem;top:50%;transform:translateY(-50%) rotate(0);transition:transform .2s ease-in-out;color:var(--text-color-secondary);font-size:1.1em}.bundle-category-accordion[open]>summary:before,.bundle-subcategory-accordion[open]>summary:before{transform:translateY(-50%) rotate(90deg)}.bundle-category-accordion>summary::-webkit-details-marker,.bundle-subcategory-accordion>summary::-webkit-details-marker{display:none}.bundle-accordion-content{padding:.5rem}.bundle-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;border-bottom:1px solid var(--border-color)}.bundle-item:last-child{border-bottom:none}.status-badge{display:inline-block;min-width:80px;text-align:center;font-size:.75em;padding:3px 8px;border-radius:4px;border:1px solid currentColor;margin-right:.5rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.status-badge.pending{color:var(--pending-color);background:rgba(var(--pending-color-rgb),.1)}.status-badge.success{color:var(--success-color);background:rgba(var(--success-color-rgb),.1)}.rich-item-row{padding:.5rem;background:var(--surface-color-hover);display:flex;align-items:center;gap:.75rem;border-radius:6px;margin-bottom:.5rem}.rich-item-row img{border:1px solid var(--border-color)}.status-section{margin-bottom:1.5rem}.status-section h5{font-size:.9rem;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-color-secondary)}.modal-content .certifications-layout{height:60vh;min-height:400px}.mobile-manager-body{background-color:var(--background-color, #0f172a);color:var(--text-color, #f8fafc);font-family:var(--font-family, "Inter", "Roboto", sans-serif);margin:0;padding:0;padding-bottom:calc(85px + env(safe-area-inset-bottom,0px));min-height:100vh;min-height:100dvh;box-sizing:border-box;-webkit-tap-highlight-color:transparent}.mobile-header{position:sticky;top:0;z-index:100;background:#1e293bf2;backdrop-filter:var(--glass-blur, blur(16px));-webkit-backdrop-filter:var(--glass-blur, blur(16px));border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .08));padding-top:calc(.75rem + env(safe-area-inset-top,0px));padding-bottom:.75rem;padding-left:1rem;padding-right:1rem;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-ambient)}.mobile-header-brand{display:flex;align-items:center;gap:.5rem}.mobile-header-brand h1{font-size:1.15rem;font-weight:700;margin:0;color:var(--text-color, #f8fafc);letter-spacing:-.02em}.mobile-header-actions{display:flex;align-items:center;gap:.5rem}.mobile-tab-content{display:none;padding:1rem;padding-bottom:calc(160px + env(safe-area-inset-bottom,24px));min-height:calc(100dvh - 120px);box-sizing:border-box;-webkit-overflow-scrolling:touch}.mobile-tab-content.active{display:block;animation:fadeIn .25s ease-in-out}details.checkout-accordion summary{display:flex!important;align-items:center!important;justify-content:space-between!important;list-style:none!important;width:100%!important;box-sizing:border-box!important}details.checkout-accordion summary::-webkit-details-marker,details.checkout-accordion summary::marker{display:none!important}details.checkout-accordion[open]>summary .accordion-arrow-icon{transform:rotate(90deg)}.mobile-search-bar{position:relative;margin-bottom:.75rem}.mobile-search-input{width:100%;padding:.65rem 1rem .65rem 2.5rem;border-radius:var(--radius-md, 8px);background:var(--surface-color-inset, rgba(15, 23, 42, .5));border:1px solid var(--border-color, rgba(255, 255, 255, .08));color:var(--text-color, #f8fafc);font-size:.9rem;box-sizing:border-box}.mobile-search-input:focus{outline:none;border-color:var(--primary-color-light, #4f80ff);box-shadow:0 0 0 2px #4f80ff40}.mobile-search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-color-secondary, #cbd5e1);pointer-events:none}.mobile-category-pills{display:flex;gap:.5rem;overflow-x:auto;padding-top:.15rem;padding-bottom:.5rem;padding-right:1.75rem;margin-bottom:.75rem;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-padding-right:1.75rem}.mobile-category-pills::-webkit-scrollbar{display:none}.mobile-pill-btn{padding:.35rem .85rem;border-radius:20px;background:var(--surface-color-inset, rgba(15, 23, 42, .5));border:1px solid var(--border-color, rgba(255, 255, 255, .08));color:var(--text-color-secondary, #cbd5e1);font-size:.8rem;font-weight:500;white-space:nowrap;cursor:pointer;transition:all .2s ease;flex-shrink:0}.mobile-pill-btn.active{background:linear-gradient(135deg,var(--brand-blue, #003385),var(--primary-color-light, #4f80ff));color:#fff;border-color:var(--primary-color-light, #4f80ff);box-shadow:0 4px 12px #4f80ff59}.mobile-group-banner{font-size:.82rem;font-weight:700;color:var(--accent-color-text, #8cb4ff);text-transform:uppercase;letter-spacing:.05em;margin:1.25rem 0 .5rem;padding-bottom:.25rem;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:.4rem}.mobile-group-banner:first-child{margin-top:0}.mobile-card-list{display:flex;flex-direction:column;gap:.75rem;padding-bottom:calc(140px + env(safe-area-inset-bottom,24px))}.mobile-inventory-card{background:var(--surface-color, rgba(30, 41, 59, .6));backdrop-filter:var(--glass-blur, blur(16px));-webkit-backdrop-filter:var(--glass-blur, blur(16px));border:1px solid var(--border-color, rgba(255, 255, 255, .08));border-radius:var(--radius-md, 10px);padding:.85rem;display:flex;gap:.75rem;align-items:center;box-shadow:var(--shadow-ambient);transition:transform .2s ease,border-color .2s ease;cursor:pointer}.mobile-inventory-card:active{transform:scale(.98);border-color:var(--primary-color-light, #4f80ff)}.mobile-card-thumb{width:64px;height:64px;border-radius:8px;object-fit:contain;background:var(--surface-color-inset, rgba(15, 23, 42, .5));border:1px solid var(--border-color, rgba(255, 255, 255, .08));flex-shrink:0}.mobile-card-info{flex-grow:1;min-width:0}.mobile-card-title{font-size:.95rem;font-weight:600;margin:0 0 .25rem;color:var(--text-color, #f8fafc);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-card-meta{font-size:.78rem;color:var(--text-color-secondary, #cbd5e1);display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.mobile-card-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .45rem;border-radius:4px;font-size:.72rem;font-weight:500;background:var(--surface-color-inset, rgba(15, 23, 42, .5));border:1px solid var(--border-color, rgba(255, 255, 255, .08));color:var(--text-color-secondary, #cbd5e1)}.mobile-card-badge.success{background:#10b98126;color:#34d399;border-color:#10b9814d}.mobile-card-badge.danger{background:#ef444426;color:#f87171;border-color:#ef44444d}.mobile-card-badge.cat{background:#4f80ff1f;color:var(--accent-color-text, #8cb4ff);border-color:#4f80ff40}.mobile-card-actions{display:flex;gap:.35rem;flex-shrink:0}.mobile-checkout-card,.mobile-reservation-card{display:flex;flex-direction:column;width:100%;box-sizing:border-box;background:var(--surface-color, rgba(30, 41, 59, .7));backdrop-filter:var(--glass-blur, blur(16px));-webkit-backdrop-filter:var(--glass-blur, blur(16px));border:1px solid var(--border-color, rgba(255, 255, 255, .08));border-radius:14px;padding:1rem;margin-bottom:.85rem;box-shadow:0 4px 20px #00000040;transition:transform .2s ease,border-color .2s ease}.mobile-checkout-card:active,.mobile-reservation-card:active{transform:scale(.99)}.mobile-checkout-card.active-checkout{border-left:4px solid #10b981}.mobile-checkout-card.overdue{border-left:4px solid #ef4444;border-color:#ef444459}.mobile-reservation-card.status-approved{border-left:4px solid #10b981}.mobile-reservation-card.status-pending{border-left:4px solid #f59e0b}.mobile-reservation-card.status-checked_out{border-left:4px solid #3b82f6}.mobile-checkout-card-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem}.mobile-checkout-user{display:flex;align-items:center;gap:.65rem;min-width:0;flex:1}.mobile-checkout-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#1d4ed8);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:#fff;flex-shrink:0;box-shadow:0 2px 8px #3b82f659;letter-spacing:.02em}.mobile-checkout-avatar.res-pending{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 2px 8px #f59e0b59}.mobile-checkout-avatar.res-approved{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 8px #10b98159}.mobile-checkout-user-details{min-width:0;flex:1}.mobile-checkout-name{font-size:.98rem;font-weight:700;color:#f8fafc;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-checkout-sub{font-size:.74rem;color:#94a3b8;margin-top:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-checkout-status-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:20px;font-size:.72rem;font-weight:600;flex-shrink:0;white-space:nowrap}.mobile-checkout-status-pill .status-dot{width:6px;height:6px;border-radius:50%;background:currentColor;display:inline-block}.mobile-checkout-status-pill.active{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.35)}.mobile-checkout-status-pill.overdue{background:#ef44442e;color:#f87171;border:1px solid rgba(239,68,68,.4);animation:pulse 2s infinite}.mobile-checkout-status-pill.status-pending{background:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.35)}.mobile-checkout-status-pill.status-approved{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.35)}.mobile-checkout-status-pill.status-checked_out{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.35)}.mobile-checkout-meta-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.65rem}.mobile-meta-chip{display:inline-flex;align-items:center;gap:.35rem;font-size:.76rem;padding:.28rem .6rem;border-radius:8px;background:#0f172a99;border:1px solid rgba(255,255,255,.08);color:#cbd5e1}.mobile-meta-chip svg{opacity:.8}.mobile-meta-chip.danger{background:#ef44441f;color:#fca5a5;border-color:#ef444440}.mobile-meta-chip.highlight{background:#3b82f61f;color:#93c5fd;border-color:#3b82f640}.mobile-checkout-gear-preview{background:#0f172a73;border-radius:8px;padding:.5rem .7rem;font-size:.78rem;color:#cbd5e1;margin-bottom:.85rem;line-height:1.4;border:1px solid rgba(255,255,255,.05)}.mobile-checkout-gear-preview .gear-preview-label{font-weight:700;color:#94a3b8;margin-right:.35rem}.mobile-checkout-action-wrap{margin-top:.2rem;width:100%}.mobile-checkout-action-wrap .btn{width:100%;padding:.65rem 1rem;border-radius:10px;font-size:.88rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:1px solid rgba(59,130,246,.4);box-shadow:0 4px 14px #2563eb59;color:#fff;cursor:pointer;transition:all .2s ease}.mobile-checkout-action-wrap .btn:active{transform:scale(.98)}.mobile-segmented-control{display:flex;background:#0f172ab3;padding:3px;border-radius:10px;border:1px solid rgba(255,255,255,.08);gap:3px;width:100%;box-sizing:border-box}.mobile-segmented-control .mobile-res-filter{flex:1;padding:.45rem .25rem;font-size:.82rem;font-weight:600;border-radius:7px;background:transparent;border:none;color:#94a3b8;cursor:pointer;transition:all .2s ease;text-align:center}.mobile-segmented-control .mobile-res-filter.active{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 2px 8px #2563eb59}#tab-scanner{overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;touch-action:pan-y!important}#reader-wrapper,#reader,#reader__scan_region,#reader__scan_region video,#reader__scan_region canvas,#reader video,#reader canvas,#reader img{touch-action:pan-y!important;pointer-events:none!important}#reader-wrapper button,#reader-wrapper input,#reader-wrapper a,#scanner-placeholder button{pointer-events:auto!important}.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:#1e293b;backdrop-filter:var(--glass-blur, blur(16px));-webkit-backdrop-filter:var(--glass-blur, blur(16px));border-top:1px solid var(--border-color, rgba(255, 255, 255, .12));display:flex;justify-content:space-around;align-items:center;padding:.35rem 0 calc(.35rem + env(safe-area-inset-bottom,16px)) 0!important;box-shadow:0 -4px 20px #0009}.mobile-bottom-nav:after{content:"";position:absolute;top:100%;left:0;right:0;height:120px;background:#1e293b;pointer-events:none}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:.2rem;background:none;border:none;color:var(--text-color-secondary, #cbd5e1);font-size:.65rem;font-weight:500;cursor:pointer;padding:.25rem .15rem;transition:color .2s ease,transform .15s ease;flex:1;min-width:0}.mobile-nav-item svg{width:20px;height:20px;transition:stroke .2s ease}.mobile-nav-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.mobile-nav-item.active span{color:var(--primary-color-light, #4f80ff)}#reader-wrapper{position:relative!important;max-width:340px!important;width:100%!important;aspect-ratio:4/3!important;max-height:min(340px,45vh)!important;margin:0 auto .75rem!important;background:#000!important;border-radius:14px!important;overflow:hidden!important;border:1px solid var(--border-color, rgba(255, 255, 255, .1))!important;box-sizing:border-box!important}#reader{width:100%!important;height:100%!important;border-radius:14px!important;overflow:hidden!important;background:#000!important}#scanner-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;background:#0f172af2;z-index:10;box-sizing:border-box;padding:1rem}#reader video{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:14px!important;transform:none!important}#reader canvas{width:100%!important;height:100%!important;object-fit:cover!important;border-radius:14px!important}#reader__scan_region{display:flex!important;align-items:center!important;justify-content:center!important}@media screen and (orientation:landscape)and (max-height:550px){#tab-scanner{padding:.35rem 1rem calc(70px + env(safe-area-inset-bottom,10px)) 1rem!important}#tab-scanner .scanner-header-text{display:none!important}#tab-scanner .scanner-landscape-layout{display:flex!important;flex-direction:row!important;align-items:stretch!important;justify-content:center!important;gap:1rem!important;width:100%!important;max-width:960px!important;margin:0 auto!important;height:calc(100dvh - 120px)!important}#reader-wrapper{flex:1 1 540px!important;max-width:580px!important;width:100%!important;aspect-ratio:auto!important;height:100%!important;max-height:calc(100dvh - 120px)!important;margin:0!important}#tab-scanner .scanner-sidebar-controls{flex:0 0 250px!important;max-width:280px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:.4rem!important}}.mobile-nav-item.active svg{stroke:var(--primary-color-light, #4f80ff)}.mobile-nav-item:active{transform:scale(.92)}.mobile-fab{position:fixed!important;bottom:calc(75px + env(safe-area-inset-bottom,16px))!important;right:16px!important;z-index:999!important;width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--brand-blue, #003385),var(--primary-color-light, #4f80ff));color:#fff;border:1px solid rgba(255,255,255,.2);box-shadow:0 4px 16px #0006;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.mobile-fab:active{transform:scale(.92)}.mobile-loading-card{display:flex;align-items:center;justify-content:center;gap:.65rem;padding:2rem 1rem;color:var(--text-color-secondary, #94a3b8);background:var(--surface-color, rgba(30, 41, 59, .4));border-radius:12px;border:1px dashed var(--border-color, rgba(255, 255, 255, .1));font-size:.85rem;font-weight:500}.mobile-loading-card svg{animation:mobileSpin 1s linear infinite;color:var(--primary-color-light, #4f80ff)}@keyframes mobileSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.checkin-item-card{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;box-sizing:border-box!important}.checkin-item-main-row{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:.6rem!important;width:100%!important;min-height:44px!important;box-sizing:border-box!important;flex-shrink:0!important}.cycle-status-pill-btn{flex:0 0 108px!important;width:108px!important;min-width:108px!important;max-width:108px!important;height:34px!important;padding:0 .5rem!important;font-size:.78rem!important;font-weight:600!important;border-radius:17px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;white-space:nowrap!important;-webkit-user-select:none!important;user-select:none!important;cursor:pointer!important}.pull-to-refresh-container{position:fixed;top:52px;left:0;right:0;height:48px;display:flex;align-items:center;justify-content:center;z-index:90;pointer-events:none;transform:translateY(0);opacity:0;transition:transform .2s cubic-bezier(.16,1,.3,1),opacity .2s ease}.pull-to-refresh-content{display:inline-flex;align-items:center;gap:.45rem;background:#1e293bf2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color, rgba(255, 255, 255, .15));border-radius:20px;padding:.35rem .85rem;box-shadow:0 4px 16px #00000080;color:var(--primary-color-light, #4f80ff);font-size:.8rem;font-weight:600}.pull-to-refresh-icon{transition:transform .2s ease}.pull-to-refresh-container.refreshing .pull-to-refresh-icon{animation:ptr-spin .7s linear infinite}@keyframes ptr-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:1024px){.main-content{padding:0 1rem;margin:1.5rem auto}.manager-layout:not(.sidebar-collapsed) #manager-sidebar{width:220px}.product-overview-modal-layout,.production-details-modal-layout{flex-direction:column}.production-details-image-pane{position:static;width:100%;max-height:400px}.production-details-details-pane{max-height:none;overflow-y:visible;padding-right:0}}@media(max-width:768px){body{font-size:15px}.main-header .nav-links,.main-header .header-actions .btn{display:none}.mobile-menu-btn{display:flex}.manager-header .header-actions .btn{display:none}.manager-header .header-actions #mobile-sidebar-toggle-btn{display:flex}.student-dashboard-layout{grid-template-columns:1fr}.dashboard-side-column{position:static;top:auto}#cart-page-layout{grid-template-columns:1fr}.cart-summary-pane{position:static;top:auto}.manager-layout{flex-direction:column}#manager-dashboard{height:auto;min-height:100vh}#manager-sidebar{position:fixed;left:-240px;top:0;height:100%;z-index:1100;transition:left .3s ease-in-out}#manager-dashboard:not(.sidebar-collapsed) #manager-sidebar{left:0}#manager-content{width:100%}.manager-header h1{font-size:1.25rem}.sidebar-footer{display:none}.subcategory-item-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem}#productions-list-view,.announcement-card{grid-template-columns:1fr}.announcement-card-image-wrapper{aspect-ratio:16 / 9}.action-buttons{flex-direction:column;gap:1rem}.action-buttons .btn{min-width:100%}.card-body{grid-template-columns:1fr;gap:1.5rem}.form-group-row{flex-direction:column;gap:1.25rem}.production-manage-item{flex-direction:column;align-items:flex-start;gap:1rem}.production-manage-actions{width:100%;justify-content:flex-end}.application-card{flex-direction:column;align-items:flex-start;gap:.75rem}.application-card-status{margin-left:auto}.portal-header{flex-direction:column;align-items:flex-start}.glass-tabs{display:inline-flex;min-width:max-content;width:auto}.glass-tabs label{flex-grow:0;min-width:auto;padding:.35rem .65rem}.bundle-editor-layout{grid-template-columns:1fr;height:70vh}.showcase-builder-layout{flex-direction:column!important;min-height:auto!important}.builder-pool-pane{flex:none!important;width:100%!important;height:320px!important}.builder-timeline-pane{width:100%!important}#modal-container .modal-content.large-modal.product-overview-modal-content.variant-overview-modal{width:100%!important;min-width:unset!important;max-width:none!important}.mobile-only-action{display:list-item!important}}
