/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{margin:0;font-size:2em}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace;font-size:1em}a{background-color:#0000}abbr[title]{border-bottom:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:100%;line-height:1.15}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring{outline:1px dotted buttontext}[type=button]:-moz-focusring{outline:1px dotted buttontext}[type=reset]:-moz-focusring{outline:1px dotted buttontext}[type=submit]:-moz-focusring{outline:1px dotted buttontext}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;white-space:normal;max-width:100%;padding:0;display:table}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template,[hidden]{display:none}@font-face{font-family:GeneralSans\/GeneralSans-Variable;src:url(/assets/GeneralSans-Variable-p1VyP7gg.woff2)format("woff2");font-weight:200 700;font-display:swap;font-style:normal}@font-face{font-family:Lobster;src:url(/assets/Lobster-D_sUKsn8.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Bukhari Script;src:url(/assets/Bukhari_Script-Dz-_CGO-.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:lazy dog;src:url(../fonts/Lazy_Dog.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--s4s-primary:#6366f1;--s4s-primary-hover:#4f46e5;--s4s-primary-active:#4338ca;--s4s-primary-light:#eef2ff;--s4s-primary-dark:#3730a3;--s4s-secondary:#06b6d4;--s4s-secondary-hover:#0891b2;--s4s-bg-main:#f8fafc;--s4s-bg-card:#fff;--s4s-bg-subtle:#f1f5f9;--s4s-text-primary:#0f172a;--s4s-text-secondary:#475569;--s4s-text-muted:#94a3b8;--s4s-text-on-primary:#fff;--s4s-border:#e2e8f0;--s4s-border-hover:#cbd5e1;--s4s-success:#10b981;--s4s-success-bg:#ecfdf5;--s4s-warning:#f59e0b;--s4s-warning-bg:#fffbeb;--s4s-danger:#ef4444;--s4s-danger-bg:#fef2f2;--s4s-info:#3b82f6;--s4s-info-bg:#eff6ff;--s4s-font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--s4s-radius-sm:.375rem;--s4s-radius-md:.5rem;--s4s-radius-lg:.75rem;--s4s-radius-xl:1rem;--s4s-radius-full:9999px;--s4s-shadow-sm:0 1px 2px 0 #0000000d;--s4s-shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--s4s-shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--s4s-shadow-xl:0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a;--s4s-transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--s4s-transition-normal:.25s cubic-bezier(.4, 0, .2, 1)}.s4s-button{font-family:var(--s4s-font-sans);border-radius:var(--s4s-radius-md);cursor:pointer;transition:all var(--s4s-transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;margin:0;font-weight:500;text-decoration:none;display:inline-flex}.s4s-button:disabled{opacity:.6;cursor:not-allowed}.s4s-button--sm{height:2rem;padding:.375rem .75rem;font-size:.8125rem}.s4s-button--md{height:2.5rem;padding:.5rem 1rem;font-size:.875rem}.s4s-button--lg{height:3rem;padding:.75rem 1.5rem;font-size:1rem}.s4s-button--primary{background-color:var(--s4s-primary);color:var(--s4s-text-on-primary);border-color:var(--s4s-primary)}.s4s-button--primary:hover:not(:disabled){background-color:var(--s4s-primary-hover);border-color:var(--s4s-primary-hover);box-shadow:0 2px 8px #6366f14d}.s4s-button--secondary{background-color:var(--s4s-bg-subtle);color:var(--s4s-text-primary);border-color:var(--s4s-border)}.s4s-button--secondary:hover:not(:disabled){border-color:var(--s4s-border-hover);background-color:#e2e8f0}.s4s-button--outline{color:var(--s4s-primary);border-color:var(--s4s-primary);background-color:#0000}.s4s-button--outline:hover:not(:disabled){background-color:var(--s4s-primary-light)}.s4s-button--danger{background-color:var(--s4s-danger);color:#fff;border-color:var(--s4s-danger)}.s4s-button--danger:hover:not(:disabled){background-color:#dc2626}.s4s-button--ghost{color:var(--s4s-text-secondary);background-color:#0000;border-color:#0000}.s4s-button--ghost:hover:not(:disabled){background-color:var(--s4s-bg-subtle);color:var(--s4s-text-primary)}.s4s-badge{border-radius:var(--s4s-radius-full);align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600;line-height:1;display:inline-flex}.s4s-badge__dot{background-color:currentColor;border-radius:50%;width:.375rem;height:.375rem}.s4s-badge--neutral{color:#475569;background:#f1f5f9}.s4s-badge--purple{background:var(--s4s-primary-light);color:var(--s4s-primary-dark)}.s4s-badge--success{background:var(--s4s-success-bg);color:#047857}.s4s-badge--warning{background:var(--s4s-warning-bg);color:#b45309}.s4s-badge--danger{background:var(--s4s-danger-bg);color:#b91c1c}.s4s-badge--info{background:var(--s4s-info-bg);color:#1d4ed8}.s4s-modal-backdrop{-webkit-backdrop-filter:blur(8px);z-index:1000;background-color:#0f0a19bf;justify-content:center;align-items:center;padding:1.5rem;animation:.2s ease-out s4s-fade-in;display:flex;position:fixed;inset:0}.s4s-modal-container{border-radius:var(--radius-xl,1.25rem);color:#fff;background:#1e1530;border:1px solid #eed4f133;flex-direction:column;width:100%;max-height:88vh;animation:.25s cubic-bezier(.16,1,.3,1) s4s-scale-up;display:flex;overflow:hidden;box-shadow:0 30px 80px #000c}.s4s-modal--sm{max-width:440px}.s4s-modal--md{max-width:580px}.s4s-modal--lg{max-width:760px}.s4s-modal--xl{max-width:980px}.s4s-modal-header{background:#ffffff08;border-bottom:1px solid #eed4f11f;justify-content:space-between;align-items:center;padding:1.25rem 1.75rem;display:flex}.s4s-modal-title{color:#fff;letter-spacing:-.01em;margin:0;font-size:1.25rem;font-weight:700}.s4s-modal-close-btn{color:#ffffffb3;cursor:pointer;width:32px;height:32px;transition:all var(--s4s-transition-fast);background:#ffffff14;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:flex}.s4s-modal-close-btn:hover{color:#fff;background-color:#fff3}.s4s-modal-body{color:#fff;flex:1;padding:1.75rem;overflow-y:auto}.s4s-modal-container .s4s-label{color:#ffffffe6;font-weight:600}.s4s-modal-container .s4s-input,.s4s-modal-container .s4s-select,.s4s-modal-container .s4s-textarea{color:#fff;background-color:#ffffff14;border:1px solid #eed4f133}.s4s-modal-container select option{color:#fff;background-color:#1e1530}.s4s-modal-container .s4s-input::placeholder,.s4s-modal-container .s4s-textarea::placeholder{color:#fff6}.s4s-modal-container .s4s-input:focus,.s4s-modal-container .s4s-select:focus,.s4s-modal-container .s4s-textarea:focus{background-color:#ffffff1f;border-color:#ff66b3;box-shadow:0 0 0 3px #ff66b340}.s4s-modal-footer{background-color:#0003;border-top:1px solid #eed4f11f;justify-content:flex-end;align-items:center;gap:.75rem;padding:1.25rem 1.75rem;display:flex}.s4s-form-field{flex-direction:column;gap:.375rem;margin-bottom:1rem;display:flex}.s4s-label{color:var(--s4s-text-primary);font-size:.875rem;font-weight:500}.s4s-input,.s4s-select,.s4s-textarea{width:100%;font-family:var(--s4s-font-sans);color:var(--s4s-text-primary);background-color:var(--s4s-bg-card);border:1px solid var(--s4s-border);border-radius:var(--s4s-radius-md);transition:border-color var(--s4s-transition-fast), box-shadow var(--s4s-transition-fast);box-sizing:border-box;padding:.5rem .75rem;font-size:.875rem}.s4s-input:focus,.s4s-select:focus,.s4s-textarea:focus{border-color:var(--s4s-primary);outline:none;box-shadow:0 0 0 3px #6366f126}.s4s-search-input-wrapper{align-items:center;width:100%;display:flex;position:relative}.s4s-search-icon{color:var(--s4s-text-muted);pointer-events:none;font-size:.875rem;position:absolute;left:.75rem}.s4s-search-input{padding-left:2.25rem!important;padding-right:2.25rem!important}.s4s-search-clear{color:var(--s4s-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.2rem;font-size:.85rem;display:flex;position:absolute;right:.75rem}.s4s-search-clear:hover{color:var(--s4s-text-primary)}.s4s-table-card{background:var(--s4s-bg-card);border-radius:var(--s4s-radius-lg);border:1px solid var(--s4s-border);box-shadow:var(--s4s-shadow-sm);overflow:hidden}.s4s-table-container{width:100%;overflow-x:auto}.s4s-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.s4s-table th{color:var(--s4s-text-secondary);border-bottom:1px solid var(--s4s-border);white-space:nowrap;background:#f8fafc;padding:.75rem 1rem;font-weight:600}.s4s-table td{border-bottom:1px solid var(--s4s-border);color:var(--s4s-text-primary);padding:.875rem 1rem}.s4s-table tr:last-child td{border-bottom:none}.s4s-table tr:hover td{background-color:#f8fafc}.s4s-card{background:var(--s4s-bg-card);border-radius:var(--s4s-radius-lg);border:1px solid var(--s4s-border);box-shadow:var(--s4s-shadow-sm);transition:transform var(--s4s-transition-fast), box-shadow var(--s4s-transition-fast);padding:1.25rem}.s4s-card--hoverable:hover{box-shadow:var(--s4s-shadow-md);transform:translateY(-2px)}.s4s-page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.s4s-page-title{color:var(--s4s-text-primary);letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:700}.s4s-page-subtitle{color:var(--s4s-text-secondary);margin-top:.25rem;margin-bottom:0;font-size:.875rem}.s4s-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:3rem 1.5rem;display:flex}.s4s-empty-icon{opacity:.8;margin-bottom:1rem;font-size:3rem}.s4s-empty-title{color:var(--s4s-text-primary);margin:0 0 .5rem;font-size:1.125rem;font-weight:600}.s4s-empty-desc{color:var(--s4s-text-muted);max-width:400px;margin:0 0 1.5rem;font-size:.875rem}.s4s-spinner{border:2px solid var(--s4s-border);border-top-color:var(--s4s-primary);border-radius:50%;width:1.5rem;height:1.5rem;animation:.6s linear infinite s4s-spin}@keyframes s4s-spin{to{transform:rotate(360deg)}}@keyframes s4s-fade-in{0%{opacity:0}to{opacity:1}}@keyframes s4s-scale-up{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}:root{--primary-purple:#41335f;--primary-purple-dark:#312b48;--primary-pink:#eed4f1;--primary-pink-light:#f4eaf3;--secondary-dark-red:#5a1f34;--secondary-light-beige:#e6d6ca;--secondary-beige:#dac6b0;--secondary-purple:#7376c4;--secondary-pink:#ff66b3}body{background-color:var(--primary-purple);flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;font-family:GeneralSans\/GeneralSans-Variable,sans-serif;display:flex}.container{background-color:var(--primary-pink-light);border-radius:1rem;flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex}input{border:1px solid var(--primary-purple);border-radius:.5rem;padding:.5rem}button{background-color:var(--primary-purple);color:#fff;cursor:pointer;border:none;border-radius:.5rem;margin-top:1rem;padding:.5rem 1rem;transition:background-color .3s}button:hover{background-color:var(--secondary-purple)}#root{width:100%;height:100%}.nav-menu{align-items:center;gap:.35rem;max-width:calc(100vw - 200px);padding:2px;display:flex;overflow-x:auto}.nav-tab{color:#4b5563;white-space:nowrap;cursor:pointer;border-radius:.5rem;padding:.4rem .8rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .2s}.nav-tab:hover{color:var(--primary-purple);background-color:#41335f14}.nav-tab.active{color:#fff;background-color:var(--primary-purple);font-weight:600;box-shadow:0 1px 3px #41335f40}:root{--ws-border:#eed4f126;--ws-border-hover:#eed4f159;--ws-bg-glass:#ffffff0d;--ws-bg-input:#ffffff0f;--ws-text-muted:#ffffffb3;--ws-text-dim:#ffffff80;--ws-modal-bg:#231b34}.workshops-page{box-sizing:border-box;flex-direction:column;width:100%;max-width:100%;height:100vh;max-height:100vh;padding:1rem 2rem 1.5rem;display:flex;overflow:hidden}.workshops-page button,.modal-overlay button{margin-top:0}.workshops-header{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:1rem;width:100%;margin-bottom:1.25rem;display:flex}.workshops-header h1{background:linear-gradient(135deg, #fff 0%, var(--primary-pink) 100%);-webkit-text-fill-color:transparent;text-shadow:0 2px 10px #00000026;-webkit-background-clip:text;margin:0 0 .35rem;font-size:2.25rem;font-weight:800}.workshops-subtitle{color:var(--ws-text-muted);margin:0;font-size:.95rem}.btn-create-workshop{background:linear-gradient(135deg, var(--secondary-pink) 0%, #ff85c2 100%);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:.75rem;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 4px 15px #ff66b34d}.btn-create-workshop:hover{background:linear-gradient(135deg, #ff85c2 0%, var(--secondary-pink) 100%);transform:translateY(-2px);box-shadow:0 6px 20px #ff66b380}.btn-create-workshop:active{transform:translateY(1px)}.workshops-toolbar{border:1px solid var(--ws-border);box-sizing:border-box;background:#ffffff08;border-radius:1rem;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;width:100%;margin-bottom:1.5rem;padding:.75rem 1rem;display:flex}.search-box{flex:1;align-items:center;min-width:260px;display:flex;position:relative}.search-icon{opacity:.6;pointer-events:none;font-size:.95rem;position:absolute;left:.85rem}.search-box input{background:var(--ws-bg-input);color:#fff;border:1px solid #eed4f133;border-radius:.6rem;outline:none;width:100%;padding:.6rem 2.2rem .6rem 2.4rem;font-size:.9rem;transition:all .2s}.search-box input:focus{border-color:var(--secondary-pink);background:#ffffff17;box-shadow:0 0 0 3px #ff66b333}.clear-search-btn{color:var(--ws-text-dim);cursor:pointer;background:0 0;border:none;border-radius:50%;padding:.2rem .4rem;font-size:.9rem;transition:all .2s;position:absolute;right:.6rem}.clear-search-btn:hover{color:#fff;background:#ffffff1a}.filter-group{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.filter-select{background:var(--ws-bg-input);color:#fff;cursor:pointer;border:1px solid #eed4f133;border-radius:.6rem;outline:none;padding:.6rem .8rem;font-size:.85rem;font-weight:500;transition:all .2s}.filter-select:focus,.filter-select:hover{border-color:var(--secondary-pink);background:#ffffff1a}.filter-select option{color:#fff;background:#251e38}.btn-reset-filters{color:#fffc;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:.6rem;padding:.6rem .9rem;font-size:.85rem;font-weight:600;transition:all .2s}.btn-reset-filters:hover{color:#fff;background:#ffffff2e}.workshops-content-container{flex:1;min-height:0;padding-bottom:1rem;padding-right:.5rem;overflow-y:auto}.workshops-content-container::-webkit-scrollbar{width:8px}.workshops-content-container::-webkit-scrollbar-track{background:#ffffff08;border-radius:4px}.workshops-content-container::-webkit-scrollbar-thumb{background:#eed4f133;border-radius:4px}.workshops-content-container::-webkit-scrollbar-thumb:hover{background:var(--secondary-pink)}.loading-container{color:var(--primary-pink);flex-direction:column;justify-content:center;align-items:center;gap:1rem;width:100%;padding:5rem 2rem;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;box-sizing:border-box;background:#ffffff08;border:2px dashed #eed4f133;border-radius:1.5rem;flex-direction:column;justify-content:center;align-items:center;width:100%;margin-top:1rem;padding:4rem 2rem;display:flex}.empty-state-icon{margin-bottom:1rem;font-size:3rem}.empty-state h3{color:#fff;margin:0 0 .5rem;font-size:1.25rem}.empty-state p{color:#fff9;margin:0 0 1.5rem;font-size:.95rem}.btn-reset-filters-large{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:.6rem;padding:.6rem 1.2rem;font-weight:600;transition:all .2s}.btn-reset-filters-large:hover{background:#fff3}.workshops-grid{box-sizing:border-box;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:2rem;width:100%;display:grid}.workshop-card{background:var(--ws-modal-bg);-webkit-backdrop-filter:blur(12px);box-sizing:border-box;border:1px solid #eed4f140;border-radius:1.25rem;flex-direction:column;width:100%;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 8px 32px #0000004d}.workshop-card:hover{border-color:var(--ws-border-hover);transform:translateY(-6px);box-shadow:0 12px 40px #00000059}.workshop-image-container{background:var(--primary-purple-dark);width:100%;height:200px;position:relative;overflow:hidden}.workshop-image{object-fit:cover;width:100%;height:100%;transition:transform .5s}.workshop-card:hover .workshop-image{transform:scale(1.05)}.workshop-placeholder-image{opacity:.8;background:linear-gradient(135deg,#41335fcc 0%,#7376c466 100%);justify-content:center;align-items:center;width:100%;height:100%;font-size:3.5rem;display:flex}.workshop-badge-row{pointer-events:none;justify-content:space-between;display:flex;position:absolute;top:.75rem;left:.75rem;right:.75rem}.badge{-webkit-backdrop-filter:blur(8px);border-radius:.5rem;padding:.25rem .65rem;font-size:.75rem;font-weight:700;box-shadow:0 2px 8px #0003}.badge-registration{color:#fff;background:#ff66b3d9;border:1px solid #ffffff4d}.badge-open{color:#fff;background:#2ecc71d9;border:1px solid #ffffff4d}.workshop-details{flex-direction:column;flex:1;padding:1.25rem 1.5rem 1.5rem;display:flex}.workshop-title{color:#fff;margin:0 0 .4rem;font-size:1.35rem;font-weight:700;line-height:1.3}.workshop-location{color:var(--primary-pink);align-items:center;gap:.3rem;margin-bottom:.85rem;font-size:.85rem;font-weight:600;display:flex}.workshop-description{color:#ffffffbf;-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;margin:0 0 1.25rem;font-size:.92rem;line-height:1.5;display:-webkit-box;overflow:hidden}.workshop-dates-section{border-top:1px solid #eed4f11a;margin-bottom:1.25rem;padding-top:.85rem}.workshop-dates-title{text-transform:uppercase;letter-spacing:.05em;color:var(--ws-text-dim);margin:0 0 .5rem;font-size:.75rem;font-weight:700}.workshop-dates-list{flex-direction:column;gap:.4rem;display:flex}.workshop-date-chip{color:var(--primary-pink);background:#eed4f114;border:1px solid #eed4f114;border-radius:.5rem;align-items:center;gap:.4rem;padding:.35rem .65rem;font-size:.82rem;font-weight:500;display:flex}.no-sessions{color:#fff6;font-size:.8rem;font-style:italic}.workshop-actions{justify-content:flex-end;gap:.75rem;margin-top:auto;display:flex}.btn-icon{cursor:pointer;color:#fff;background:#ffffff14;border:1px solid #ffffff1f;border-radius:.5rem;padding:.45rem .85rem;font-size:.85rem;font-weight:600;transition:all .2s}.btn-icon:hover{color:#fff;background:#fff3}.btn-participants{color:#eed4f1;background:#eed4f11a;border:1px solid #eed4f140}.btn-participants:hover{color:#fff;background:#e54d8040;border-color:#e54d8080}.btn-edit:hover{border-color:var(--secondary-purple);background:#7376c440}.btn-delete:hover{color:#ff4d4d;background:#ff4d4d33;border-color:#ff4d4d}.modal-overlay .participants-modal{background-color:var(--ws-modal-bg);flex-direction:column;width:92vw;max-width:860px;max-height:88vh;display:flex}.modal-subtitle{color:#fff}.participants-modal-body{flex-direction:column;gap:1rem;padding:1.25rem;display:flex;overflow-y:auto}.participants-summary-bar{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem;display:grid}.summary-stat{background:#ffffff0a;border:1px solid #ffffff14;border-radius:.65rem;flex-direction:column;gap:.25rem;padding:.75rem 1rem;display:flex}.summary-stat .stat-label{text-transform:uppercase;letter-spacing:.05em;color:#ffffff80;font-size:.75rem;font-weight:600}.summary-stat .stat-val{color:#fff;font-size:1.25rem;font-weight:700}.summary-stat .present-stat{color:#4ade80}.participants-toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.participants-toolbar .search-box{flex:1;min-width:220px}.participants-select-filter{color:#fff;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff26;border-radius:.5rem;outline:none;padding:.55rem .85rem;font-size:.85rem}.participants-select-filter option{color:#fff;background:#1e1432}.btn-export-csv{color:#4ade80;cursor:pointer;white-space:nowrap;background:#4ade8026;border:1px solid #4ade8066;border-radius:.5rem;padding:.55rem .95rem;font-size:.82rem;font-weight:600;transition:all .2s}.btn-export-csv:hover{background:#4ade804d;transform:translateY(-1px)}.btn-export-print{color:#93c5fd;cursor:pointer;white-space:nowrap;background:#93c5fd26;border:1px solid #93c5fd66;border-radius:.5rem;padding:.55rem .95rem;font-size:.82rem;font-weight:600;transition:all .2s}.btn-export-print:hover{background:#93c5fd4d;transform:translateY(-1px)}.btn-add-participant-trigger{color:var(--secondary-pink,#f37ba3);cursor:pointer;text-align:left;background:#eed4f114;border:1px dashed #eed4f140;border-radius:.5rem;padding:.55rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s}.btn-add-participant-trigger:hover{border-color:var(--secondary-pink,#f37ba3);background:#eed4f126}.quick-add-participant-form{background:#ffffff08;border:1px solid #eed4f133;border-radius:.65rem;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.quick-add-participant-form h4{color:#fff;margin:0;font-size:.9rem}.form-group-full{flex-direction:column;gap:.35rem;display:flex}.field-label{color:#ffffffd9;font-size:.8rem;font-weight:600}.participants-select-filter.full-width{width:100%}.form-row-2{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.form-row-2 input{color:#fff;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:.45rem;outline:none;padding:.5rem .75rem;font-size:.85rem}.form-actions-inline{justify-content:flex-end;gap:.5rem;display:flex}.participants-table-container{border:1px solid #ffffff14;border-radius:.65rem;overflow-x:auto}.participants-table{border-collapse:collapse;text-align:left;width:100%;font-size:.85rem}.participants-table th{color:#fff9;text-transform:uppercase;letter-spacing:.05em;background:#ffffff0f;border-bottom:1px solid #ffffff14;padding:.65rem .85rem;font-size:.75rem;font-weight:600}.participants-table td{color:#fff;vertical-align:middle;border-bottom:1px solid #ffffff0a;padding:.65rem .85rem}.participants-table tr:hover{background:#ffffff08}.participants-table tr.row-present{background:#4ade800a}.participant-user-info{align-items:center;gap:.6rem;display:flex}.avatar-circle{color:#fff;background:linear-gradient(135deg,#e54d80,#f37ba3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.75rem;font-weight:700;display:flex}.participant-name{font-weight:600}.cell-email{color:#ffffffb3;font-size:.82rem}.badge-section{color:var(--secondary-pink,#f37ba3);background:#eed4f11f;border-radius:.35rem;padding:.2rem .5rem;font-size:.75rem;font-weight:700}.session-tag{color:#ffffffbf;font-size:.78rem}.btn-attendance{cursor:pointer;border:none;border-radius:.4rem;padding:.3rem .65rem;font-size:.78rem;font-weight:600;transition:all .2s}.btn-attendance.present{color:#4ade80;background:#4ade802e;border:1px solid #4ade8066}.btn-attendance.absent{color:#fbbf24;background:#fbbf2426;border:1px solid #fbbf2466}.btn-remove-participant{color:#fff6;cursor:pointer;background:0 0;border:none;border-radius:.3rem;padding:.2rem .5rem;font-size:1rem;transition:all .2s}.btn-remove-participant:hover{color:#f87171;background:#f8717126}.empty-participants-state{text-align:center;color:#ffffff80;padding:2rem;font-style:italic}.workshops-footer{flex-shrink:0;padding-top:.75rem}.btn-back-dashboard{color:var(--ws-text-muted);align-items:center;gap:.4rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-back-dashboard:hover{color:#fff;transform:translate(-3px)}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#0f0a19bf;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-overlay .workshop-modal{background:var(--ws-modal-bg);color:#fff;border:1px solid #eed4f140;border-radius:1.25rem;width:540px;max-width:95vw;max-height:88vh;padding:1.75rem;overflow-y:auto;box-shadow:0 25px 60px #0009}.modal-header{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.modal-header h2{color:#fff;margin:0;font-size:1.6rem;font-weight:800}.modal-close-btn{color:var(--ws-text-dim);cursor:pointer;background:0 0;border:none;padding:.2rem;font-size:1.25rem;line-height:1;transition:color .2s}.modal-close-btn:hover{color:#fff}.workshop-modal form{flex-direction:column;gap:1rem;display:flex}.workshop-modal label{color:#ffffffd9;flex-direction:column;gap:.35rem;font-size:.88rem;font-weight:600;display:flex}.workshop-modal input[type=text],.workshop-modal input[type=url],.workshop-modal input[type=number],.workshop-modal input[type=datetime-local],.workshop-modal textarea{background:var(--ws-bg-input);color:#fff;box-sizing:border-box;border:1px solid #eed4f133;border-radius:.6rem;padding:.65rem .85rem;font-family:inherit;font-size:.9rem;transition:all .2s}.workshop-modal input:focus,.workshop-modal textarea:focus{border-color:var(--secondary-pink);background:#ffffff1a;outline:none;box-shadow:0 0 0 3px #ff66b340}.modal-section-title{color:#fff;text-transform:uppercase;letter-spacing:.04em;font-size:.85rem;font-weight:700}.modal-registration-box{background:#ffffff08;border:1px solid #ffffff12;border-radius:.75rem;flex-direction:column;gap:.75rem;padding:.85rem 1rem;display:flex}.workshop-modal .checkbox-label{cursor:pointer;flex-direction:row;align-items:center;gap:.6rem;margin:0;display:flex}.workshop-modal .checkbox-label input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--secondary-pink);cursor:pointer}.workshop-modal .sub-label{color:var(--ws-text-muted);margin-top:.25rem;font-size:.8rem}.modal-image-box{background:#ffffff08;border:1px solid #ffffff12;border-radius:.75rem;flex-direction:column;gap:.75rem;padding:.85rem 1rem;display:flex}.modal-image-header{justify-content:space-between;align-items:center;display:flex}.image-tab-buttons{background:#0003;border-radius:.4rem;gap:.25rem;padding:.2rem;display:flex}.tab-btn{color:#fff9;cursor:pointer;background:0 0;border:none;border-radius:.3rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600;transition:all .2s}.tab-btn.active{color:#fff;background:#ff66b34d}.image-preview-container{border:1px solid #eed4f133;border-radius:.6rem;width:100%;height:160px;position:relative;overflow:hidden}.image-preview-container img{object-fit:cover;width:100%;height:100%}.btn-remove-image{color:#fff;cursor:pointer;background:#ff4d4de6;border:none;border-radius:50%;justify-content:center;align-items:center;width:1.8rem;height:1.8rem;font-size:.8rem;font-weight:700;transition:background .2s;display:flex;position:absolute;top:.5rem;right:.5rem;box-shadow:0 2px 8px #0000004d}.btn-remove-image:hover{background:#ff4d4d}.dropzone{cursor:pointer;background:#ffffff08;border:2px dashed #eed4f14d;border-radius:.6rem;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;height:110px;transition:all .2s;display:flex;position:relative}.dropzone.dragging,.dropzone:hover{border-color:var(--secondary-pink);background:#ff66b31a}.file-input-overlay{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.dropzone-icon{font-size:1.4rem}.dropzone-text{color:#fffc;text-align:center;font-size:.85rem}.dropzone-subtext{color:#fff6;font-size:.7rem}.modal-dates-manager{background:#ffffff08;border:1px solid #ffffff12;border-radius:.75rem;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.modal-dates-header{justify-content:space-between;align-items:center;display:flex}.btn-add-date{color:var(--primary-pink);cursor:pointer;background:#eed4f126;border:1px solid #eed4f140;border-radius:.5rem;padding:.3rem .75rem;font-size:.8rem;font-weight:700;transition:all .2s}.btn-add-date:hover{color:#fff;border-color:var(--primary-pink);background:#eed4f140}.dates-list-container{flex-direction:column;gap:.75rem;display:flex}.date-input-card{background:#00000026;border:1px solid #ffffff0f;border-radius:.6rem;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.date-input-header{justify-content:space-between;align-items:center;display:flex}.session-index-badge{color:var(--primary-pink);font-size:.8rem;font-weight:700}.btn-remove-date{color:#f66;cursor:pointer;background:#ff4d4d1f;border:1px solid #ff4d4d40;border-radius:.4rem;padding:.2rem .5rem;font-size:.75rem;font-weight:600;transition:all .2s}.btn-remove-date:hover{color:#fff;background:#ff4d4d40}.date-input-fields{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.modal-actions{justify-content:flex-end;gap:.75rem;margin-top:1rem;padding-top:.5rem;display:flex}.btn-cancel{color:var(--ws-text-muted);cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:.6rem;padding:.65rem 1.2rem;font-weight:600;transition:all .2s}.btn-cancel:hover{color:#fff;background:#ffffff14}.btn-save{background:linear-gradient(135deg, var(--secondary-pink) 0%, #ff85c2 100%);color:#fff;cursor:pointer;border:none;border-radius:.6rem;padding:.65rem 1.6rem;font-weight:700;transition:all .2s;box-shadow:0 4px 15px #ff66b34d}.btn-save:hover{transform:translateY(-1px);box-shadow:0 6px 20px #ff66b380}.btn-save:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}@media (width<=768px){.workshops-page{padding:5rem 1rem 1rem}.workshops-header{flex-direction:column;align-items:stretch}.btn-create-workshop{justify-content:center}.workshops-toolbar,.filter-group{flex-direction:column;align-items:stretch}.workshops-grid,.date-input-fields{grid-template-columns:1fr}}.room-picker-container{flex-direction:column;gap:.5rem;display:flex}.room-select-input{background:var(--ws-bg-input);color:#fff;border:1px solid #eed4f133;border-radius:.6rem;outline:none;width:100%;padding:.6rem .8rem;font-size:.9rem;transition:all .2s}.room-select-input:focus{border-color:var(--secondary-pink);background:#ffffff17;box-shadow:0 0 0 3px #ff66b333}.room-select-input option{color:#fff;background:#251e38}.slot-room-row{border-top:1px dashed #ffffff1a;flex-direction:column;gap:.4rem;margin-top:.25rem;padding-top:.5rem;display:flex}.slot-room-header{color:var(--ws-text-muted);justify-content:space-between;align-items:center;font-size:.78rem;display:flex}.slot-conflicts-container{flex-direction:column;gap:.35rem;margin-top:.4rem;display:flex}.conflict-badge{border-radius:.5rem;align-items:flex-start;gap:.4rem;padding:.45rem .65rem;font-size:.78rem;line-height:1.35;display:flex}.conflict-badge.error{color:#fca5a5;background:#ef44442e;border:1px solid #ef444466}.conflict-badge.warning{color:#fcd34d;background:#f59e0b2e;border:1px solid #f59e0b66}.conflict-badge.ok{color:#86efac;background:#22c55e1f;border:1px solid #22c55e4d}.conflict-icon{flex-shrink:0;margin-top:.05rem;font-size:.85rem}.conflict-text{flex:1}.conflicts-summary-banner{color:#fca5a5;background:#ef444426;border:1px solid #ef444459;border-radius:.6rem;align-items:center;gap:.6rem;margin-bottom:.75rem;padding:.65rem .85rem;font-size:.85rem;font-weight:500;display:flex}.workshop-session-room-tag{color:var(--ws-text-muted);background:#ffffff1a;border-radius:.3rem;margin-left:.4rem;padding:.15rem .45rem;font-size:.72rem}.students-page{flex-direction:column;width:100%;height:100%;padding:2rem 1.5rem;display:flex;position:relative;overflow:hidden}.students-header-row{align-items:center;gap:1.5rem;margin-bottom:1.5rem;display:flex}.students-header-row h1{color:#fff;margin:0;font-size:2.2rem;font-weight:700}.student-table{border-collapse:collapse;text-align:left;background:#fff;border-radius:.5rem;width:100%;overflow:hidden}.student-table th{background:var(--primary-purple);color:#fff;z-index:10;padding:1rem;font-size:.95rem;font-weight:600;position:sticky;top:0}.student-table td{color:var(--primary-purple-dark);border-bottom:1px solid #0000000d;padding:.85rem 1rem;font-size:.9rem}.student-row{transition:background-color .2s}.student-row:hover{background-color:#41335f08}.action-buttons{gap:.5rem;display:flex}.btn-icon{cursor:pointer;color:var(--primary-purple);background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items:center;margin-top:0;padding:.25rem;transition:background-color .2s;display:flex}.btn-icon:hover{background-color:#41335f14}.btn-icon.delete:hover{color:#e74c3c;background-color:#e74c3c14}.back-link{color:var(--primary-purple);font-size:.9rem;font-weight:600;text-decoration:none;position:absolute;bottom:1.5rem;left:1.5rem}.import-btn-container{display:inline-block;position:relative}.import-input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.dashboard{flex-direction:row;gap:2rem;width:100%;height:100%;padding:2rem 1.5rem;display:flex}.col{background-color:var(--primary-pink-light);border-radius:1rem;height:100%;padding:1rem}.btn-primary{background:var(--secondary-pink);color:#fff;cursor:pointer;border:none;border-radius:.5rem;padding:.4rem .9rem;font-weight:600}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.modal-overlay{z-index:100;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:1rem;flex-direction:column;gap:1rem;width:420px;max-width:90vw;padding:2rem;display:flex}.modal h2{margin:0}.modal form{flex-direction:column;gap:.75rem;display:flex}.modal label{flex-direction:column;gap:.25rem;font-size:.875rem;font-weight:500;display:flex}.modal input,.modal textarea,.modal select{border:1px solid #ddd;border-radius:.4rem;padding:.4rem .6rem;font-family:inherit;font-size:.9rem}.modal-actions{justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.error{color:#c0392b;margin:0;font-size:.85rem}.stats-container{flex-direction:column;gap:1.5rem;width:100%;display:flex}.stats-row{gap:1.5rem;width:100%;display:flex}.first-row .stat-card,.second-row .stat-card{flex:1;min-width:0}.third-row{gap:1.5rem;width:100%;display:flex}.third-row .triple-stat-row{flex:1;min-width:0}.stat-card{color:#2d3748;background:#fff;border:1px solid #e2e8f0cc;border-radius:1rem;flex-direction:column;justify-content:space-between;padding:1.25rem;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #00000014,0 4px 6px -2px #0000000a}.stat-title{color:#4a5568;text-transform:uppercase;letter-spacing:.05em;text-align:center;margin:0;font-size:.95rem;font-weight:600}.stat-value{color:var(--secondary-pink);text-align:center;margin:.5rem 0;font-size:2.75rem;font-weight:800}.stat-details{border-top:1px solid #edf2f7;justify-content:space-around;margin-top:.5rem;padding-top:.75rem;display:flex}.stat-detail{flex-direction:column;align-items:center;display:flex}.stat-label{color:#718096;margin:0;font-size:.75rem;font-weight:500}.stat-number{color:#2d3748;margin-top:.25rem;font-size:.95rem;font-weight:700}.triple-stat-row{background:#fff;border:1px solid #e2e8f0cc;border-radius:1rem;flex-direction:column;padding:1rem 1.25rem;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 6px -1px #0000000d}.triple-stat-row:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #00000014}.role-title{color:#4a5568;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;font-size:.9rem;font-weight:700}.stat-columns{justify-content:space-between;width:100%;display:flex}.stat-column{flex-direction:column;align-items:center;width:33%;display:flex}.stat-column:not(:last-child){border-right:1px solid #edf2f7}.staffs-page{flex-direction:column;width:100%;height:100%;padding:2rem 1.5rem;display:flex;position:relative;overflow:hidden}.staffs-header-row{align-items:center;gap:1.5rem;margin-bottom:1.5rem;display:flex}.staffs-header-row h1{color:#fff;margin:0;font-size:2.2rem;font-weight:700}.search-controls{align-items:center;gap:1rem;width:100%;margin-bottom:1.5rem;display:flex}.search-bar{border:1px solid var(--secondary-purple);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;background:#ffffff1a;border-radius:9999px;flex:1;padding:.6rem 1.2rem;font-size:1rem;transition:all .3s}.search-bar::placeholder{color:#ffffff80}.search-bar:focus{border-color:var(--secondary-pink);background:#fff3;outline:none;box-shadow:0 0 10px #ff66b333}.table-card{background-color:var(--primary-pink-light);border-radius:1rem;flex-direction:column;flex:1;padding:1.5rem;display:flex;overflow:hidden;box-shadow:0 8px 32px #00000026}.table-container{border-radius:.5rem;flex:1;overflow-y:auto}.staff-table{border-collapse:collapse;text-align:left;background:#fff;border-radius:.5rem;width:100%;overflow:hidden}.staff-table th{background:var(--primary-purple);color:#fff;z-index:10;padding:1rem;font-size:.95rem;font-weight:600;position:sticky;top:0}.staff-table td{color:var(--primary-purple-dark);vertical-align:middle;border-bottom:1px solid #0000000d;padding:.85rem 1rem;font-size:.9rem}.staff-row{transition:background-color .2s}.staff-row:hover{background-color:#00000005}.staff-row.present-active{background-color:#43aa8b26}.staff-row.present-active:hover{background-color:#43aa8b40}.staff-row.present-on-leave{background-color:#ffbf6933}.staff-row.present-on-leave:hover{background-color:#ffbf694d}.staff-row.present-inactive{background-color:#d8666426}.staff-row.present-inactive:hover{background-color:#d8666440}.status-badge{text-transform:uppercase;border-radius:9999px;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.status-badge.active{color:#fff;background-color:#43aa8b}.status-badge.on_leave{color:var(--primary-purple-dark);background-color:#ffbf69}.status-badge.inactive{color:#fff;background-color:#d86664}.presence-pill{text-align:center;border-radius:9999px;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.presence-pill.present{color:#2b705c;background-color:#43aa8b33;border:1px solid #43aa8b66}.presence-pill.absent{color:#666;background-color:#7878781a;border:1px solid #78787833}.back-link{color:var(--secondary-pink);font-size:.95rem;font-weight:600;text-decoration:none;transition:color .2s;position:absolute;bottom:1.5rem;left:2.5rem}.back-link:hover{color:#fff}.staff-table select{color:var(--primary-purple-dark);cursor:pointer;background:#fff;border:1px solid #00000026;border-radius:.4rem;outline:none;padding:.3rem .5rem;font-size:.85rem}.staff-table select:focus{border-color:var(--secondary-pink)}.staff-table input[type=checkbox]{cursor:pointer;width:1.15rem;height:1.15rem;accent-color:var(--primary-purple)}.action-btn{cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1.15rem;transition:transform .2s;margin-top:0!important}.action-btn:hover{transform:scale(1.25)}:root{--hour-height:80px}.print-schedule-banner,.print-schedule-footer{display:none}.schedule-page{box-sizing:border-box;flex-direction:column;width:100%;height:100%;min-height:0;padding:2rem 2.5rem;display:flex;position:relative;overflow:hidden}.schedule-header-row{grid-template-columns:1fr auto 1fr;align-items:center;width:100%;height:95px;margin-bottom:2rem;display:grid}.schedule-title-area{align-items:center;gap:1.25rem;display:flex}.schedule-header-row h1{color:#fff;margin:0;font-size:2.2rem;font-weight:700}.header-right-spacer{justify-self:end;width:40px}.back-btn{color:#fff;background:#ffffff1a;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:1.2rem;font-weight:600;text-decoration:none;transition:all .3s;display:flex}.back-btn:hover{background:var(--secondary-pink);border-color:#0000;transform:translate(-3px);box-shadow:0 4px 10px #ff66b34d}.controls-center{box-sizing:border-box;flex-direction:column;justify-self:center;align-items:center;gap:.85rem;width:100%;max-width:450px;height:95px;display:flex}.toggle-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-sizing:border-box;background:#ffffff14;border:1px solid #ffffff1f;border-radius:9999px;width:100%;height:42px;padding:.25rem;display:flex}.toggle-btn{color:#ffffffa6;cursor:pointer;z-index:2;-webkit-user-select:none;user-select:none;white-space:nowrap;background:0 0;border:none;border-radius:9999px;flex:1;justify-content:center;align-items:center;height:100%;padding:.6rem 1rem;font-size:.95rem;font-weight:600;transition:all .2s;display:flex;position:relative;margin-top:0!important}.toggle-btn:hover{color:#fff;background:#ffffff0d}.toggle-btn.active{color:var(--primary-purple-dark);background:#fff;box-shadow:0 4px 12px #00000026}.autocomplete-container{width:100%;max-width:320px;height:40px;position:relative}.person-search-input{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;box-sizing:border-box;background:#ffffff1a;border:1px solid #ffffff26;border-radius:9999px;outline:none;width:100%;max-width:320px;height:40px;padding:.65rem 1.25rem;font-size:.95rem;font-weight:600;transition:all .3s}.person-search-input::placeholder{color:#ffffff80}.person-search-input:focus,.person-search-input:hover{border-color:var(--secondary-pink);background:#ffffff26;box-shadow:0 0 12px #ff66b340}.suggestions-list{background:var(--primary-purple-dark);z-index:100;box-sizing:border-box;border:1px solid #ffffff26;border-radius:12px;max-height:220px;padding:.35rem 0;position:absolute;top:115%;left:0;right:0;overflow-y:auto;box-shadow:0 10px 25px #00000073}.suggestions-list::-webkit-scrollbar{width:5px}.suggestions-list::-webkit-scrollbar-track{background:0 0}.suggestions-list::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:9999px}.suggestion-item{color:#ffffffd9;cursor:pointer;text-align:left;flex-direction:column;gap:.1rem;padding:.6rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.suggestion-item:hover{color:#fff;background:#ffffff1a}.suggestion-item .suggestion-subtitle{color:#ffffff80;font-size:.72rem;font-weight:500}.no-suggestions{color:#ffffff80;text-align:center;padding:.75rem 1.25rem;font-size:.85rem;font-weight:500}.entity-selector-wrapper{width:100%;max-width:320px;height:40px;position:relative}.entity-select{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;appearance:none;text-align:center;text-align-last:center;box-sizing:border-box;background:#ffffff1a;border:1px solid #ffffff26;border-radius:9999px;outline:none;width:100%;height:40px;padding:.65rem 2.5rem .65rem 1.25rem;font-size:.95rem;font-weight:600;transition:all .3s}.entity-select:focus,.entity-select:hover{border-color:var(--secondary-pink);background:#ffffff26;box-shadow:0 0 12px #ff66b340}.entity-selector-wrapper:after{content:"";pointer-events:none;opacity:.7;border-bottom:2px solid #fff;border-right:2px solid #fff;width:.45rem;height:.45rem;transition:opacity .3s;position:absolute;top:50%;right:1.25rem;transform:translateY(-50%)rotate(45deg)}.entity-selector-wrapper:hover:after{opacity:1}.entity-select option{background-color:var(--primary-purple-dark);color:#fff;padding:.5rem;font-weight:500}.calendar-container{box-sizing:border-box;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:1rem;flex:1;min-height:0;position:relative;overflow:auto}.calendar-container::-webkit-scrollbar{width:8px;height:8px}.calendar-container::-webkit-scrollbar-track{background:#ffffff0d;border-radius:9999px}.calendar-container::-webkit-scrollbar-thumb{background:#fff3;border-radius:9999px}.calendar-container::-webkit-scrollbar-thumb:hover{background:#ffffff59}.calendar-grid{grid-template-columns:80px repeat(8,240px);min-width:max-content;display:grid;position:relative}.corner-header{z-index:25;background:var(--primary-purple-dark);box-sizing:border-box;border-bottom:2px solid #ffffff26;border-right:1px solid #ffffff1a;height:60px;position:sticky;top:0;left:0}.day-header{z-index:20;background:var(--primary-purple-dark);color:#fff;box-sizing:border-box;border-bottom:2px solid #ffffff26;border-right:1px solid #ffffff1a;flex-direction:column;justify-content:center;align-items:center;height:60px;display:flex;position:sticky;top:0}.day-header .day-title{font-size:.9rem;font-weight:700}.day-header .day-subtitle{color:#fff9;margin-top:.1rem;font-size:.72rem}.time-column-grid{z-index:15;background:var(--primary-purple-dark);box-sizing:border-box;border-right:1px solid #ffffff26;position:sticky;left:0}.time-grid-cell{height:var(--hour-height,80px);color:#ffffffa6;box-sizing:border-box;border-bottom:1px solid #ffffff0d;justify-content:center;align-items:flex-start;padding-top:6px;font-size:.8rem;font-weight:600;display:flex}.day-body-column{height:calc(12 * var(--hour-height,80px));box-sizing:border-box;border-right:1px solid #ffffff14;position:relative}.hour-grid-cell{height:var(--hour-height,80px);box-sizing:border-box;border-bottom:1px solid #ffffff0d}.cards-container{pointer-events:none;position:absolute;inset:0}.slot-card-absolute{box-sizing:border-box;cursor:pointer;z-index:2;pointer-events:auto;border-left:4px solid #7376c4;border-radius:6px;flex-direction:column;gap:.2rem;padding:.45rem .6rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;left:4px;right:4px;overflow:hidden;box-shadow:0 4px 6px #00000026}.slot-card-absolute:hover{z-index:10;transform:scale(1.03);box-shadow:0 8px 24px #00000059}.slot-card-absolute.lecture{color:#0369a1;background-color:#e0f2fe;border-left-color:#0284c7}.slot-card-absolute.exercise{color:#b45309;background-color:#fef3c7;border-left-color:#d97706}.slot-card-absolute.workshop{color:#be185d;background-color:#fce7f3;border-left-color:#db2777}.slot-card-absolute.activity{color:#15803d;background-color:#dcfce7;border-left-color:#16a34a}.slot-card-absolute.free{color:#374151;background-color:#f3f4f6;border-left-color:#4b5563}.slot-card-absolute.special{color:#6d28d9;background-color:#f5f3ff;border-left-color:#8b5cf6}.slot-card-absolute.meal{color:#0f766e;background-color:#f0fdfa;border-left-color:#0d9488}.card-time{opacity:.85;align-items:center;gap:.25rem;font-size:.72rem;font-weight:700;display:flex}.card-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.82rem;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.card-meta-row{opacity:.85;flex-wrap:wrap;gap:.4rem;margin-top:auto;font-size:.7rem;font-weight:600;display:flex}.card-meta-item{align-items:center;gap:.15rem;display:inline-flex}.loading-container{color:#fff;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;display:flex}.spinner{border:4px solid #ffffff1a;border-top-color:var(--secondary-pink);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@media (width<=768px){.schedule-page{padding:1.5rem 1rem}.schedule-header-row{flex-direction:column;align-items:center;gap:1.25rem;margin-bottom:1.5rem;display:flex}.header-right-spacer{display:none}}@media print{:root{--hour-height:48px}@page{size:landscape;margin:0}*,:before,:after{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body,html,#root{color:var(--primary-purple-dark,#312b48)!important;background:#fff!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important;position:static!important;overflow:visible!important}#root>div,#root>div>div{width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;display:block!important;position:static!important;overflow:visible!important}header,nav,.nav-menu,.back-btn,.schedule-header-row,.controls-center,.toggle-container,.entity-selector-wrapper,.autocomplete-container,.header-right-spacer,.s4s-modal-backdrop,.s4s-modal,button,.btn-primary,header img,nav img,.s4s-modal img{display:none!important}.schedule-page{color:var(--primary-purple-dark,#312b48)!important;box-sizing:border-box!important;background:#fff!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:4mm 5mm 3mm!important;display:block!important;position:static!important;overflow:visible!important;transform:none!important}.print-schedule-banner{border-bottom:2px solid var(--primary-purple,#41335f)!important;background:#fff!important;justify-content:flex-start!important;align-items:center!important;margin-bottom:4px!important;padding:0 2px 4px!important;display:flex!important}.print-banner-left{align-items:center!important;gap:12px!important;display:flex!important}.print-banner-title{letter-spacing:-.01em;color:var(--primary-purple-dark,#312b48)!important;margin:0!important;font-size:1.15rem!important;font-weight:800!important}.print-banner-badge{color:var(--primary-purple-dark,#312b48)!important;background:var(--primary-pink-light,#f4eaf3)!important;border:1.5px solid var(--primary-purple,#41335f)!important;border-radius:6px!important;padding:2px 10px!important;font-size:.95rem!important;font-weight:800!important}.calendar-container{border:1.5px solid var(--primary-purple,#41335f)!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;box-shadow:none!important;page-break-inside:avoid!important;break-inside:avoid!important;background:#fff!important;border-radius:6px!important;flex:none!important;display:block!important;position:static!important;overflow:visible!important}.calendar-grid{box-sizing:border-box!important;border:none!important;flex-wrap:wrap!important;width:100%!important;min-width:100%!important;display:flex!important;position:relative!important;overflow:visible!important}.corner-header{background:var(--primary-pink-light,#f4eaf3)!important;border-bottom:2px solid var(--primary-purple,#41335f)!important;border-right:1px solid var(--primary-pink,#eed4f1)!important;box-sizing:border-box!important;flex:0 0 46px!important;width:46px!important;height:36px!important;position:static!important}.day-header{background:var(--primary-pink-light,#f4eaf3)!important;width:calc(12.5% - 5.75px)!important;height:36px!important;color:var(--primary-purple-dark,#312b48)!important;border-bottom:2px solid var(--primary-purple,#41335f)!important;border-right:1px solid var(--primary-pink,#eed4f1)!important;box-sizing:border-box!important;flex-direction:column!important;flex:1 1 0!important;justify-content:center!important;align-items:center!important;padding:2px!important;display:flex!important;position:static!important}.day-header:last-child{border-right:none!important}.day-header .day-title{color:var(--primary-purple-dark,#312b48)!important;font-size:.72rem!important;font-weight:800!important}.day-header .day-subtitle{color:var(--primary-purple,#41335f)!important;margin-top:0!important;font-size:.58rem!important;font-weight:600!important}.time-column-grid{width:46px!important;height:calc(12 * var(--hour-height,48px))!important;background:var(--primary-pink-light,#f4eaf3)!important;border-right:1.5px solid var(--primary-purple,#41335f)!important;box-sizing:border-box!important;flex-direction:column!important;flex:0 0 46px!important;display:flex!important;position:static!important}.time-grid-cell{color:var(--primary-purple-dark,#312b48)!important;height:var(--hour-height,48px)!important;box-sizing:border-box!important;border-bottom:1px solid #e5d3e4!important;justify-content:center!important;align-items:flex-start!important;padding-top:2px!important;font-size:.72rem!important;font-weight:800!important;display:flex!important}.day-body-column{width:calc(12.5% - 5.75px)!important;height:calc(12 * var(--hour-height,48px))!important;box-sizing:border-box!important;border-right:1px solid #eed4f1!important;flex:1 1 0!important;display:block!important;position:relative!important;overflow:visible!important}.day-body-column:last-child{border-right:none!important}.hour-grid-cell{height:var(--hour-height,48px)!important;box-sizing:border-box!important;border-bottom:1px solid #f0e2ef!important}.cards-container{pointer-events:none!important;width:100%!important;height:100%!important;position:absolute!important;inset:0!important;overflow:visible!important}.slot-card-absolute{cursor:default!important;page-break-inside:avoid!important;break-inside:avoid!important;border:1.5px solid #94a3b8!important;border-left-width:5px!important;border-radius:4px!important;padding:2px 4px!important;overflow:hidden!important;box-shadow:0 1px 3px #0000001a!important}.card-time{align-items:center!important;margin-bottom:2px!important;display:flex!important}.card-time-badge{color:#0f172a!important;background:#00000014!important;border-radius:3px!important;padding:1px 4px!important;font-size:.64rem!important;font-weight:800!important;line-height:1.15!important;display:inline-block!important}.card-title{color:#0f172a!important;-webkit-line-clamp:2!important;margin:1px 0!important;font-size:.68rem!important;font-weight:800!important;line-height:1.15!important}.card-meta-row{color:#334155!important;gap:.25rem!important;margin-top:auto!important;font-size:.56rem!important;line-height:1.1!important}.card-meta-item{font-weight:700!important}.slot-card-absolute.lecture{background-color:#e0f2fe!important;border-color:#7dd3fc #7dd3fc #7dd3fc #0284c7!important}.slot-card-absolute.exercise{background-color:#fef3c7!important;border-color:#fcd34d #fcd34d #fcd34d #d97706!important}.slot-card-absolute.workshop{background-color:#fce7f3!important;border-color:#f9a8d4 #f9a8d4 #f9a8d4 #db2777!important}.slot-card-absolute.activity{background-color:#dcfce7!important;border-color:#86efac #86efac #86efac #16a34a!important}.slot-card-absolute.free{background-color:#f1f5f9!important;border-color:#cbd5e1 #cbd5e1 #cbd5e1 #64748b!important}.slot-card-absolute.special{background-color:#f3e8ff!important;border-color:#d8b4fe #d8b4fe #d8b4fe #7c3aed!important}.slot-card-absolute.meal{background-color:#ccfbf1!important;border-color:#5eead4 #5eead4 #5eead4 #0d9488!important}.print-schedule-footer{page-break-inside:avoid!important;break-inside:avoid!important;justify-content:flex-end!important;align-items:center!important;margin-top:4px!important;padding-top:2px!important;display:flex!important}.print-footer-logos{align-items:center!important;gap:14px!important;display:flex!important}.print-footer-logo-s4s{object-fit:contain!important;width:22px!important;height:22px!important;display:block!important}.print-footer-logo-agep{object-fit:contain!important;width:88px!important;height:20px!important;display:block!important}}.scan-page{background:linear-gradient(135deg,#1a1230 0%,#2d1b4e 50%,#1e1040 100%);flex-direction:column;align-items:center;gap:1.5rem;min-height:calc(100vh - 64px);padding:1.5rem 1rem 2rem;display:flex}.scan-stats-bar{gap:.75rem;width:100%;max-width:560px;display:flex}.scan-stat-pill{text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff1f;border-radius:12px;flex:1;padding:.65rem 1rem}.scan-stat-pill .stat-value{color:#fff;font-size:1.5rem;font-weight:800;line-height:1}.scan-stat-pill .stat-label{color:#ffffff8c;text-transform:uppercase;letter-spacing:.05em;margin-top:.2rem;font-size:.7rem}.scan-stat-pill.pill-a .stat-value{color:#34d399}.scan-stat-pill.pill-b .stat-value{color:#60a5fa}.entrance-selector{width:100%;max-width:560px}.entrance-selector h2{color:#fff9;text-transform:uppercase;letter-spacing:.1em;text-align:center;margin:0 0 .6rem;font-size:.75rem}.entrance-buttons{gap:.75rem;display:flex}.entrance-btn{letter-spacing:.04em;cursor:pointer;border:2px solid #0000;border-radius:14px;flex:1;padding:1rem;font-size:1.5rem;font-weight:800;transition:all .2s;position:relative;overflow:hidden}.entrance-btn:before{content:"";opacity:0;background:#ffffff26;transition:opacity .2s;position:absolute;inset:0}.entrance-btn:hover:before{opacity:1}.entrance-btn-a{color:#6ee7b7;background:linear-gradient(135deg,#065f46,#047857);border-color:#34d399;box-shadow:0 0 #34d39900}.entrance-btn-a.active{color:#fff;background:linear-gradient(135deg,#059669,#10b981);box-shadow:0 0 24px #34d39980,0 0 0 3px #34d3994d}.entrance-btn-b{color:#93c5fd;background:linear-gradient(135deg,#1e3a8a,#1d4ed8);border-color:#60a5fa;box-shadow:0 0 #60a5fa00}.entrance-btn-b.active{color:#fff;background:linear-gradient(135deg,#2563eb,#3b82f6);box-shadow:0 0 24px #60a5fa80,0 0 0 3px #60a5fa4d}.entrance-btn .btn-group-label{font-size:2.5rem;line-height:1;display:block}.entrance-btn .btn-sub{opacity:.8;text-transform:uppercase;letter-spacing:.08em;margin-top:.25rem;font-size:.7rem;font-weight:500;display:block}.scanner-wrapper{width:100%;max-width:560px;position:relative}.scanner-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0f;border:1px solid #ffffff1f;border-radius:20px;overflow:hidden}.scanner-header{border-bottom:1px solid #ffffff14;align-items:center;gap:.5rem;padding:.75rem 1.25rem;display:flex}.scanner-dot{background:#22c55e;border-radius:50%;width:10px;height:10px;animation:2s infinite pulse-dot;box-shadow:0 0 8px #22c55e}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.scanner-header span{color:#ffffffb3;letter-spacing:.04em;text-transform:uppercase;font-size:.8rem;font-weight:600}.scanner-entrance-badge{border-radius:99px;margin-left:auto;padding:.25rem .75rem;font-size:.8rem;font-weight:700}.scanner-entrance-badge.badge-a{color:#34d399;background:#34d39933;border:1px solid #34d39966}.scanner-entrance-badge.badge-b{color:#60a5fa;background:#60a5fa33;border:1px solid #60a5fa66}.scanner-inner{justify-content:center;align-items:center;min-height:300px;display:flex;position:relative}#qr-reader{background:0 0!important;border:none!important;width:100%!important}#qr-reader video{border-radius:0!important;width:100%!important}#qr-reader__scan_region{background:0 0!important}#qr-reader__dashboard{background:#0000004d!important;padding:.5rem!important}#qr-reader__dashboard button{color:#fff!important;background:#ffffff26!important;border:1px solid #ffffff4d!important;border-radius:8px!important;margin:.25rem!important;padding:.4rem .8rem!important}#qr-reader__dashboard select{color:#fff!important;background:#00000080!important;border:1px solid #ffffff4d!important;border-radius:6px!important;padding:.3rem .5rem!important}.scanner-no-entrance{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10;background:#000000b3;border-radius:0 0 20px 20px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;display:flex;position:absolute;inset:0}.scanner-no-entrance p{color:#fff9;text-align:center;margin:0;font-size:.9rem}.scanner-no-entrance .arrow-up{font-size:2rem;animation:1.2s infinite bounce-up}@keyframes bounce-up{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.scan-feedback{z-index:1000;justify-content:center;align-items:center;animation:.2s feedback-in;display:flex;position:fixed;inset:0}@keyframes feedback-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.scan-feedback.feedback-ok{background:#059669eb}.scan-feedback.feedback-error{background:#dc2626eb}.scan-feedback.feedback-warning{background:#d97706eb}.feedback-content{text-align:center;color:#fff;max-width:400px;padding:2rem}.feedback-icon{margin-bottom:1rem;font-size:5rem;line-height:1;display:block}.feedback-title{margin:0 0 .5rem;font-size:2rem;font-weight:800}.feedback-name{opacity:.95;margin:0 0 .25rem;font-size:1.4rem;font-weight:700}.feedback-detail{opacity:.8;margin:0;font-size:.95rem}.feedback-badge{background:#fff3;border-radius:99px;margin-top:.75rem;padding:.3rem 1rem;font-size:.85rem;font-weight:600;display:inline-block}.last-scan{border:1px solid;border-radius:14px;align-items:center;gap:1rem;width:100%;max-width:560px;padding:.9rem 1.25rem;transition:all .3s;display:flex}.last-scan.result-ok{background:#05966926;border-color:#34d3994d}.last-scan.result-error{background:#dc262626;border-color:#f871714d}.last-scan.result-warning{background:#d9770626;border-color:#fbbf244d}.last-scan-icon{flex-shrink:0;font-size:1.75rem}.last-scan-info{flex:1;min-width:0}.last-scan-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:700;overflow:hidden}.last-scan-detail{color:#fff9;margin-top:.1rem;font-size:.8rem}.last-scan-time{color:#fff6;flex-shrink:0;font-size:.75rem}.feedback-page{box-sizing:border-box;flex-direction:column;gap:1.5rem;width:100%;min-height:100%;padding:1.25rem 2rem 2rem;display:flex}.feedback-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.feedback-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;display:grid}.survey-card{-webkit-backdrop-filter:blur(12px);background:#231b34d9;border:1px solid #eed4f133;border-radius:16px;flex-direction:column;justify-content:space-between;padding:1.25rem;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;box-shadow:0 4px 20px #0003}.survey-card:hover{border-color:#eed4f173;transform:translateY(-2px);box-shadow:0 8px 30px #00000059}.survey-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:20px;align-items:center;padding:.25rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.survey-badge.active{color:#34d399;background:#10b98133;border:1px solid #10b98166}.survey-badge.scheduled{color:#fbbf24;background:#f59e0b33;border:1px solid #f59e0b66}.survey-badge.inactive{color:#cbd5e1;background:#94a3b833;border:1px solid #94a3b866}.likert-container{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.likert-options{grid-template-columns:repeat(5,1fr);gap:.5rem;display:grid}.likert-btn{color:#fff;text-align:center;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;flex-direction:column;align-items:center;gap:.25rem;padding:.65rem .25rem;font-size:.8rem;transition:all .15s;display:flex}.likert-btn:hover{background:#eed4f133;border-color:#eed4f180}.likert-btn.selected{color:#fff;background:linear-gradient(135deg,#ec4899 0%,#8b5cf6 100%);border-color:#0000;font-weight:600;box-shadow:0 2px 10px #ec489959}.builder-page-card{background:#ffffff0a;border:1px dashed #eed4f140;border-radius:12px;margin-bottom:1.25rem;padding:1.25rem}.builder-question-card{background:#00000040;border:1px solid #ffffff1a;border-radius:10px;margin-top:.75rem;padding:1rem}.analytics-bar-bg{background:#ffffff1a;border-radius:11px;width:100%;height:22px;position:relative;overflow:hidden}.analytics-bar-fill{background:linear-gradient(90deg,#818cf8 0%,#f472b6 100%);border-radius:11px;height:100%;transition:width .4s}.analytics-text-list{flex-direction:column;gap:.5rem;max-height:200px;display:flex;overflow-y:auto}.analytics-text-item{background:#ffffff0f;border:1px solid #ffffff14;border-left:3px solid #f472b6;border-radius:0 8px 8px 0;padding:.6rem .8rem;font-size:.88rem;line-height:1.4}
