@import "https://fonts.googleapis.com/css2?family=Merriweather:wght@400;700&family=Source+Sans+Pro:wght@400;600&display=swap";.breadcrumb{background:var(--relic-parchment-light);border-bottom:1px solid var(--relic-border);padding:.75rem 1.5rem}.breadcrumb ol{align-items:center;gap:.5rem;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.breadcrumb li{align-items:center;gap:.5rem;display:flex}.breadcrumb a{color:var(--relic-text-muted);text-decoration:none;transition:color .15s}.breadcrumb a:hover{color:var(--relic-accent)}.breadcrumb-separator{color:var(--relic-border);font-size:.7rem}.breadcrumb-current{color:var(--relic-text);font-weight:500}.app{min-height:100vh;display:flex}.app-sidebar{width:var(--relic-sidebar-width);background:var(--relic-nav-bg);z-index:100;flex-direction:column;transition:width .2s;display:flex;position:fixed;top:0;bottom:0;left:0}.app-sidebar.collapsed{width:var(--relic-sidebar-collapsed)}.sidebar-brand{text-align:center;border-bottom:1px solid #d4c4a826;padding:1.25rem 1rem}.sidebar-logo{font-family:var(--relic-font-heading);color:var(--relic-accent);letter-spacing:.15em;margin:0;font-size:1.5rem;font-weight:700}.sidebar-logo .logo-icon{display:none}.sidebar-tagline{color:var(--relic-nav-text);opacity:.7;letter-spacing:.05em;margin-top:.25rem;font-size:.65rem}.app-sidebar.collapsed .sidebar-tagline,.app-sidebar.collapsed .sidebar-logo .logo-text{display:none}.app-sidebar.collapsed .sidebar-logo .logo-icon{font-size:1.25rem;display:inline}.sidebar-nav{flex:1;padding:1rem 0;overflow-y:auto}.nav-links{flex-direction:column;gap:.25rem;display:flex}.nav-links a{color:var(--relic-nav-text);border-left:3px solid #0000;align-items:center;gap:.75rem;padding:.75rem 2rem .75rem 1rem;font-size:.9rem;text-decoration:none;transition:background .15s,color .15s;display:flex}.nav-links a:hover{color:var(--relic-nav-hover);background:linear-gradient(90deg,#c9a2271a 0% 70%,#0000 100%)}.nav-links a.active{color:var(--relic-accent);border-left-color:var(--relic-accent);background:linear-gradient(90deg,#c9a22726 0% 70%,#0000 100%)}.nav-links a svg{flex-shrink:0;width:1.1rem}.app-sidebar.collapsed .nav-link-text{display:none}.app-sidebar.collapsed .nav-links a{justify-content:center;padding:.75rem}.app-sidebar:after{content:"";pointer-events:none;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACYAAASICAMAAABIuk0RAAAAAXNSR0IB2cksfwAAAARnQU1BAACxjwv8YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAwBQTFRF////LR8U////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Rmt2pwAAAAF0Uk5TAEDm2GYAAAABYktHRACIBR1IAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH6gUaEjoTMvpCdgAAA55JREFUeNrtncFuBCEMQ+3//+leqrZqt9q0a7AJ2ePqaQYSEiCBDPjzhwe/szA4sGi5UdhTKDGUMEix4kuTu4BkuWnFW8U4mN+c1d7S0TbEusFsA0TytBssEI8WiksCNUYLxiJG6dMMmFRZ+y1L6d+A/RhuweDAlF0AsB+jA6u1DdE9JS4Zlh3sFOdjvAc7fiDB4AbF3jK4C0oMUGJMxtQDqYV/427n0EL1ydgszI7aQMVOu9mDHKlyu2gGHN97UsyhgX/rILcGASJvtkKb1FBG3WmRm7RtUGKA4aXZA6n8UgZbFu/BGIyNstaZjNK/id2gejJirhu0yK3HqQmDTjnYpQva5OVxi/HmsPpkWzBsK0yblAcoa9xrT7Ose8U9/ca9jFH5NKlAkjEGY7ds7hg7fThWDsGLH0f8DckTZQNMPZBmZ7Q2bnmPQA73ljXHBSnmCvrt3/LAIt4OFyQd0ePzMelAwn6smDpXYobjEMUjB1qsw4mOFkdc5jLdQqxoCyUMJcuCA6PjaeFnGsPNmcdjjnkheEkQ60N8ZxrPx6Ryk2Iep+oZSPdgDS69zpp8MSae6z3RvODFD4Nfuibo9zRp+/5vpW2FxOjjd/7yNGkaopi0lQUkLQZYHiGOaplToOwgrEE5R54/LD05ca0PaXGByNIF8XHW88V7zZlthznP1ObHpMu882PRyYXHpT29IwoqDUgq81nPoul/wxhefCO39iak2BTwmRj+ZoFwsKUxfHWcPLgcd3J+wdG28Ug45sDMTSm5XFvwiNfStuCpbeq/tZObY4WfvPGEAavtAeHAphjpPwdSsk57HKTEYJhar3kb9iviljMZRbTNgTlUj2CMg600Z2CwrxgcTzsfQwmDFKMWs6gewZhYIKZ5YX/232ILHjcIrbKCbUE7LCsvRU31gGO8Dbbu51F9sW0WLHyi9Ey7ydgfzr+lH/wwBK/uOlejxdTV5NijKPp8EeafWAOB3KNTBD8tu2B7cttysWRPrlaWBat/IIBSTPzSL6ACgxTTtu2T02AfVSVEGLUYpZiyp5BidYHQIDfmKqssEIYOpO1OVTov7F8jWb4vI1wSWDbF2r1z7WmyYEJsrCYXK8YGHZg0q5ibP43O7U7eeTEmtIXkNGsPLcyFjoieMnYgdTAZDnbIAkPp8OHA5Pn6aAP0TLv3nOqX3/ba/1WCJwdxrJ7cpKzg673ZxYXUl/otZUbSy3FfVIDxng8Qv4C9AayWQQjfjgvWAAAAAElFTkSuQmCC);background-position:100%;background-repeat:repeat-y;background-size:19px 580px;width:100%;height:100%;position:absolute;top:0;left:19px}.sidebar-toggle{border-top:1px solid #d4c4a826;justify-content:flex-end;padding:.75rem;display:flex}.sidebar-toggle button{color:var(--relic-nav-text);cursor:pointer;opacity:.7;background:0 0;border:none;padding:.5rem;transition:opacity .15s}.sidebar-toggle button:hover{opacity:1}.app-main{margin-left:var(--relic-sidebar-width);background-color:var(--relic-parchment);flex-direction:column;flex:1;min-height:100vh;transition:margin-left .2s;display:flex;position:relative}.app-main.sidebar-collapsed{margin-left:var(--relic-sidebar-collapsed)}.app-main:before{content:"";top:0;left:var(--relic-sidebar-width);opacity:.15;pointer-events:none;z-index:0;background-image:url(/static/image/map-background.094561cd6c.jpg);background-position:50%;background-size:cover;transition:left .2s;position:fixed;bottom:0;right:0}.app-main.sidebar-collapsed:before{left:var(--relic-sidebar-collapsed)}.app-main>*{z-index:1;position:relative}.app-content{flex-direction:column;flex:1;min-height:0;display:flex}.app-content>*{width:min(95%,1400px);margin-inline:auto}.app-sidebar.collapsed+.app-main{margin-left:var(--relic-sidebar-collapsed)}.selectable-table{border-collapse:collapse;background:var(--relic-parchment-light);border-radius:8px;width:100%;overflow:hidden;box-shadow:0 1px 3px #3d29141a}.selectable-table th{text-align:left;background:var(--relic-parchment-dark);color:var(--relic-text);border-bottom:1px solid var(--relic-border);padding:.75rem 1rem;font-size:.85rem;font-weight:600}.selectable-table td{border-bottom:1px solid var(--relic-parchment-dark);padding:.75rem 1rem}.selectable-table tbody tr{transition:background .1s}.selectable-table tbody tr:hover{background:var(--relic-parchment-dark)}.selectable-table-row-selected{background:#c9a2271a}.selectable-table-row-selected:hover{background:#c9a22726}.selectable-table-checkbox-cell{text-align:center;cursor:pointer;width:40px;padding:.75rem .5rem}.selectable-table-checkbox-cell input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--relic-accent)}.selectable-table-row-clickable{cursor:pointer}.distribute-modal-overlay{z-index:1000;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.distribute-modal{background:var(--relic-parchment-light);border-radius:8px;flex-direction:column;width:95vw;max-width:1100px;max-height:90vh;display:flex;box-shadow:0 4px 24px #2d1f144d}.distribute-modal .modal-header{border-bottom:1px solid var(--relic-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.distribute-modal .modal-header h2{font-size:18px;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.distribute-modal .close-btn{cursor:pointer;color:var(--relic-text-muted);background:0 0;border:none;padding:0;font-size:24px;line-height:1}.wizard-steps{border-bottom:1px solid var(--relic-border);background:var(--relic-parchment);margin:0;padding:0;display:flex}.wizard-step{color:var(--relic-text-muted);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;flex:1;padding:12px 16px;font-size:14px;transition:all .2s}.wizard-step:hover:not(.disabled){color:var(--relic-text);background:var(--relic-parchment-light)}.wizard-step.active{color:var(--relic-accent);border-bottom-color:var(--relic-accent);font-weight:500}.wizard-step.disabled{opacity:.5;cursor:not-allowed}.modal-body{flex:1;min-height:400px;padding:20px;overflow-y:auto}.review-step{flex-direction:column;gap:20px;display:flex}.item-section h3{color:var(--relic-text);font-size:16px;font-family:var(--relic-font-heading);margin:0 0 12px}.item-list{margin:0;padding:0;list-style:none}.item-list>li{background:var(--relic-parchment);border:1px solid var(--relic-border);border-radius:4px;margin-bottom:8px;padding:10px 12px}.nested-list{color:var(--relic-text-muted);margin:8px 0 0 20px;padding:0;font-size:13px;list-style:outside}.targets-step{height:100%}.targets-layout{grid-template-columns:1fr 1fr;gap:20px;height:100%;display:grid}.search-panel,.targeted-panel{flex-direction:column;min-height:0;display:flex}.search-panel h3,.targeted-panel h3{color:var(--relic-text);margin:0 0 12px;font-size:16px}.search-box{gap:8px;margin-bottom:16px;display:flex}.search-box input{border:1px solid var(--relic-border);border-radius:4px;flex:1;padding:8px 12px;font-size:14px}.search-box button{background:var(--relic-accent);color:var(--relic-nav-bg);cursor:pointer;border:none;border-radius:4px;padding:8px 16px;font-size:14px}.search-box button:disabled{opacity:.6;cursor:not-allowed}.search-results,.targeted-list{border:1px solid var(--relic-border);border-radius:4px;flex:1;max-height:250px;overflow-y:auto}.search-results table,.targeted-list table{border-collapse:collapse;width:100%;font-size:13px}.search-results th,.targeted-list th{text-align:left;background:var(--relic-parchment);border-bottom:1px solid var(--relic-border);color:var(--relic-text);padding:8px 10px;font-weight:500;position:sticky;top:0}.search-results td,.targeted-list td{border-bottom:1px solid var(--relic-border);color:var(--relic-text);padding:8px 10px}.search-results tr:last-child td,.targeted-list tr:last-child td{border-bottom:none}.add-btn,.remove-btn{cursor:pointer;border:none;border-radius:4px;padding:4px 10px;font-size:12px}.add-btn{background:var(--relic-success);color:#fff}.remove-btn{background:var(--relic-error);color:#fff}.no-targets{color:var(--relic-text-muted);text-align:center;padding:20px;font-style:italic}.cms-section{border:1px solid var(--relic-border);border-radius:4px;margin-top:16px}.cms-section summary{cursor:pointer;color:var(--relic-text);background:var(--relic-parchment);padding:10px 12px;font-weight:500}.cms-options{padding:12px}.cms-filters{flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.cms-filters label{color:var(--relic-text);align-items:center;gap:4px;font-size:13px;display:flex}.state-grid{background:var(--relic-parchment);border-radius:4px;grid-template-columns:repeat(4,1fr);gap:4px 12px;max-height:200px;margin-bottom:12px;padding:8px;display:grid;overflow-y:auto}.state-grid label{color:var(--relic-text);align-items:center;gap:4px;font-size:12px;display:flex}.state-grid .select-all{border-bottom:1px solid var(--relic-border);grid-column:1/-1;margin-bottom:4px;padding-bottom:4px;font-weight:500}.cms-select-btn{background:var(--relic-accent);color:var(--relic-nav-bg);cursor:pointer;border:none;border-radius:4px;padding:8px 16px;font-size:14px}.cms-select-btn:disabled{opacity:.6;cursor:not-allowed}.confirm-step{flex-direction:column;gap:20px;display:flex}.confirm-section{background:var(--relic-parchment);border:1px solid var(--relic-border);border-radius:4px;padding:16px}.confirm-section h3{color:var(--relic-text);margin:0 0 12px;font-size:16px}.confirm-section h4{color:var(--relic-text-muted);margin:12px 0 8px;font-size:14px}.confirm-section ul{color:var(--relic-text);margin:0;padding-left:20px;font-size:14px}.confirm-targets{flex-wrap:wrap;gap:8px;display:flex}.target-chip,.more-chip{background:var(--relic-parchment-light);border:1px solid var(--relic-border);color:var(--relic-text);border-radius:16px;padding:4px 10px;font-size:12px}.more-chip{background:var(--relic-accent);color:var(--relic-nav-bg);border-color:var(--relic-accent)}.success-message{text-align:center;padding:40px 20px}.success-message h3{color:var(--relic-success);margin:0 0 16px;font-size:20px}.success-message p{color:var(--relic-text);margin:8px 0}.distribute-modal .modal-footer{border-top:1px solid var(--relic-border);background:var(--relic-parchment);justify-content:flex-end;align-items:center;gap:12px;padding:16px 20px;display:flex}.distribute-modal .modal-footer button{cursor:pointer;border-radius:4px;padding:10px 20px;font-size:14px}.back-btn{background:var(--relic-parchment-light);border:1px solid var(--relic-border);color:var(--relic-text)}.next-btn{background:var(--relic-accent);color:var(--relic-nav-bg);border:none}.next-btn:disabled{opacity:.6;cursor:not-allowed}.distribute-btn{background:var(--relic-success);color:#fff;border:none}.distribute-btn:disabled{opacity:.6;cursor:not-allowed}.close-btn-footer{background:var(--relic-accent);color:var(--relic-nav-bg);border:none}.modal-error{color:var(--relic-error);border-top:1px solid var(--relic-error);background:#8a3f3f1a;padding:12px 20px}.courses-page{max-width:1200px;margin:0 auto;padding:1.5rem}.courses-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.courses-header h1{margin:0;font-size:1.5rem}.courses-filters{align-items:center;gap:1rem;display:flex}.courses-category-select{border:1px solid var(--relic-border);background:var(--relic-parchment-light);min-width:180px;color:var(--relic-text);border-radius:4px;padding:.5rem .75rem;font-size:.9rem}.courses-category-select:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.courses-new-btn{background:var(--relic-accent);color:var(--relic-nav-bg);cursor:pointer;white-space:nowrap;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.9rem;font-weight:600}.courses-new-btn:hover{filter:brightness(1.05)}.courses-import-btn{background:var(--relic-nav-bg);color:var(--relic-parchment);cursor:pointer;white-space:nowrap;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.9rem;font-weight:600}.courses-import-btn:hover{background:var(--relic-text)}.courses-search{gap:.5rem;display:flex}.courses-search input{border:1px solid var(--relic-border);background:var(--relic-parchment-light);width:250px;color:var(--relic-text);border-radius:4px;padding:.5rem .75rem;font-size:.9rem}.courses-search input:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.courses-search button{background:var(--relic-nav-bg);color:var(--relic-parchment);cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.9rem}.courses-search button:hover{background:var(--relic-text)}.courses-error{color:var(--relic-error);background:#f5e6e6;border:1px solid #d4b8b8;border-radius:4px;margin-bottom:1rem;padding:1rem}.courses-loading{text-align:center;color:var(--relic-text-muted);padding:3rem}.courses-table{border-collapse:collapse;background:var(--relic-parchment-light);border-radius:8px;width:100%;overflow:hidden;box-shadow:0 1px 3px #3d29141a}.courses-table th{text-align:left;background:var(--relic-parchment-dark);color:var(--relic-text);border-bottom:1px solid var(--relic-border);padding:.75rem 1rem;font-size:.85rem;font-weight:600}.courses-table td{border-bottom:1px solid var(--relic-parchment-dark);padding:.75rem 1rem}.courses-row{cursor:pointer;transition:background .1s}.courses-row:hover{background:var(--relic-parchment-dark)}.course-id{color:var(--relic-text-muted);font-family:monospace;font-size:.8rem}.courses-pagination{justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.courses-pagination button{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.9rem}.courses-pagination button:hover:not(:disabled){background:var(--relic-parchment-dark)}.courses-pagination button:disabled{opacity:.5;cursor:not-allowed}.courses-pagination span{color:var(--relic-text-muted);font-size:.9rem}.new-course-page{max-width:640px;margin:0 auto;padding:1.5rem}.nc-header{align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.nc-header h1{margin:0;font-size:1.5rem}.nc-back-btn{background:var(--relic-parchment-light);border:1px solid var(--relic-border);cursor:pointer;width:2rem;height:2rem;color:var(--relic-text);border-radius:4px}.nc-back-btn:hover{background:var(--relic-parchment-dark)}.nc-title-icon{color:var(--relic-accent)}.nc-error{color:var(--relic-error);background:#f5e6e6;border:1px solid #d4b8b8;border-radius:4px;margin-bottom:1rem;padding:1rem}.nc-form{background:var(--relic-parchment-light);border:1px solid var(--relic-border);border-radius:8px;flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex;box-shadow:0 1px 3px #3d29141a}.nc-field{flex-direction:column;gap:.4rem;display:flex}.nc-field-label{color:var(--relic-text);font-size:.85rem;font-weight:600}.nc-field input{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;padding:.5rem .75rem;font-size:.9rem}.nc-field input:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.nc-actions{justify-content:flex-end;gap:.75rem;margin-top:.5rem;display:flex}.nc-cancel-btn{background:var(--relic-parchment-light);color:var(--relic-text);border:1px solid var(--relic-border);cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.9rem}.nc-cancel-btn:hover:not(:disabled){background:var(--relic-parchment-dark)}.nc-create-btn{background:var(--relic-nav-bg);color:var(--relic-parchment);cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.9rem}.nc-create-btn:hover:not(:disabled){background:var(--relic-text)}.nc-create-btn:disabled,.nc-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.lesson-info-modal-overlay{z-index:1000;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lesson-info-modal{background:var(--relic-parchment-light);border-radius:8px;flex-direction:column;width:90vw;max-width:800px;max-height:90vh;display:flex;box-shadow:0 4px 24px #2d1f144d}.lesson-info-modal .modal-header{border-bottom:1px solid var(--relic-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.lesson-info-modal .modal-header h2{font-size:18px;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.lesson-info-modal-body{flex:1;padding:20px;overflow-y:auto}.modal-loading,.modal-error{text-align:center;color:var(--relic-text);padding:40px}.modal-error{color:var(--relic-error)}.lesson-not-created{border:1px solid var(--relic-accent);color:var(--relic-nav-bg);background:#c9a22726;border-radius:4px;padding:16px;font-size:14px}.lesson-create-btn{cursor:pointer;background:var(--relic-nav-bg);color:var(--relic-parchment);border:none;border-radius:4px;margin-top:12px;padding:10px 20px;font-size:14px}.lesson-create-btn:hover:not(:disabled){background:var(--relic-text)}.lesson-create-btn:disabled{opacity:.5;cursor:not-allowed}.lesson-section{margin-bottom:24px}.lesson-section h3{color:var(--relic-text);border-bottom:1px solid var(--relic-border);font-size:16px;font-family:var(--relic-font-heading);margin:0 0 12px;padding-bottom:8px}.lesson-name-display{background:var(--relic-parchment);color:var(--relic-text);border-radius:4px;margin:0;padding:12px;font-size:14px}.objectives-list{margin:0;padding:0 0 0 20px;list-style:outside}.objectives-list li{color:var(--relic-text);margin:8px 0;font-size:14px;line-height:1.5}.objective-code{background:var(--relic-parchment-dark);color:var(--relic-text);border-radius:3px;margin-right:8px;padding:2px 6px;font-family:monospace;font-size:12px}.modal-footer{border-top:1px solid var(--relic-border);background:var(--relic-parchment);justify-content:flex-end;align-items:center;gap:12px;padding:16px 20px;display:flex}.modal-footer button{cursor:pointer;border-radius:4px;padding:10px 20px;font-size:14px}.save-btn{background:var(--relic-nav-bg);color:var(--relic-parchment);border:none}.save-btn:hover:not(:disabled){background:var(--relic-text)}.save-btn:disabled{opacity:.5;cursor:not-allowed}.cancel-btn{background:var(--relic-parchment-light);border:1px solid var(--relic-border);color:var(--relic-text)}.glossary-editor{border:1px solid var(--relic-border);border-radius:4px;overflow:hidden}.glossary-header{background:var(--relic-parchment);border-bottom:1px solid var(--relic-border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.glossary-header h3{border:none;margin:0;padding:0;font-size:14px}.add-word-btn{background:var(--relic-success);color:var(--relic-parchment);cursor:pointer;border:none;border-radius:4px;padding:6px 12px;font-size:13px}.add-word-btn:hover:not(:disabled){background:#4a6732}.add-word-btn:disabled{opacity:.5;cursor:not-allowed}.glossary-empty{text-align:center;color:var(--relic-text-muted);margin:0;padding:20px;font-style:italic}.glossary-list{margin:0;padding:0;list-style:none}.glossary-item{border-bottom:1px solid var(--relic-border)}.glossary-item:last-child{border-bottom:none}.glossary-item-header{background:var(--relic-parchment-light);cursor:pointer;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.glossary-item-header:hover{background:var(--relic-parchment)}.glossary-word-info{align-items:center;gap:8px;display:flex}.play-audio-btn{background:var(--relic-nav-bg);width:24px;height:24px;color:var(--relic-parchment);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:10px;display:flex}.play-audio-btn:hover{background:var(--relic-text)}.glossary-word-text{color:var(--relic-text);font-weight:500}.glossary-expand-icon{color:var(--relic-text-muted);font-size:10px}.glossary-item-fields{background:var(--relic-parchment);border-top:1px solid var(--relic-border);padding:16px}.glossary-item-fields label{color:var(--relic-text-muted);margin-bottom:12px;font-size:13px;font-weight:500;display:block}.glossary-item-fields input,.glossary-item-fields textarea{border:1px solid var(--relic-border);background:var(--relic-parchment-light);width:100%;color:var(--relic-text);border-radius:4px;margin-top:4px;padding:8px 10px;font-family:inherit;font-size:14px;display:block}.glossary-item-fields input:focus,.glossary-item-fields textarea:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.glossary-item-fields input:disabled,.glossary-item-fields textarea:disabled{background:var(--relic-parchment-dark);cursor:not-allowed}.glossary-item-fields textarea{resize:vertical;min-height:60px}.remove-word-btn{background:var(--relic-error);color:var(--relic-parchment);cursor:pointer;border:none;border-radius:4px;margin-top:8px;padding:8px 16px;font-size:13px}.remove-word-btn:hover:not(:disabled){background:#6b2929}.remove-word-btn:disabled{opacity:.5;cursor:not-allowed}.audio-field-row{gap:8px;margin-top:4px;display:flex}.audio-field-row input{flex:1;margin-top:0}.upload-audio-btn{background:var(--relic-text-muted);color:var(--relic-parchment);cursor:pointer;white-space:nowrap;border:none;border-radius:4px;padding:8px 12px;font-size:13px}.upload-audio-btn:hover:not(:disabled){background:var(--relic-text)}.upload-audio-btn:disabled{opacity:.5;cursor:not-allowed}.objectives-editor{border:1px solid var(--relic-border);border-radius:4px;overflow:hidden}.objectives-editor-header{background:var(--relic-parchment);border-bottom:1px solid var(--relic-border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.objectives-editor-header h3{border:none;margin:0;padding:0;font-size:14px}.add-objective-btn{background:var(--relic-success);color:var(--relic-parchment);cursor:pointer;border:none;border-radius:4px;padding:6px 12px;font-size:13px}.add-objective-btn:hover:not(:disabled){background:#4a6732}.add-objective-btn:disabled{opacity:.5;cursor:not-allowed}.objectives-empty{text-align:center;color:var(--relic-text-muted);margin:0;padding:20px;font-style:italic}.objectives-edit-list{margin:0;padding:0;list-style:none}.objective-edit-item{border-bottom:1px solid var(--relic-border);background:var(--relic-parchment-light);align-items:flex-start;gap:8px;padding:12px 16px;display:flex}.objective-edit-item:last-child{border-bottom:none}.objective-reorder{flex-direction:column;gap:2px;display:flex}.objective-move-btn{border:1px solid var(--relic-border);background:var(--relic-parchment);width:24px;height:20px;color:var(--relic-text-muted);cursor:pointer;border-radius:3px;padding:0;font-size:9px}.objective-move-btn:hover:not(:disabled){background:var(--relic-parchment-dark)}.objective-move-btn:disabled{opacity:.4;cursor:not-allowed}.objective-text-input{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);resize:vertical;border-radius:4px;flex:1;min-height:40px;padding:8px 10px;font-family:inherit;font-size:14px}.objective-text-input:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.objective-text-input:disabled{background:var(--relic-parchment-dark);cursor:not-allowed}.remove-objective-btn{background:var(--relic-error);width:28px;height:28px;color:var(--relic-parchment);cursor:pointer;border:none;border-radius:4px;flex-shrink:0;padding:0;font-size:18px;line-height:1}.remove-objective-btn:hover:not(:disabled){background:#6b2929}.remove-objective-btn:disabled{opacity:.5;cursor:not-allowed}.question-bank-link{color:var(--relic-accent);font-weight:600;text-decoration:none;display:inline-block}.question-bank-link:hover{text-decoration:underline}.bulk-publish-modal-overlay{z-index:1000;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.bulk-publish-modal{background:var(--relic-parchment-light);border-radius:8px;flex-direction:column;width:90vw;max-width:700px;max-height:90vh;display:flex;box-shadow:0 4px 24px #2d1f144d}.bulk-publish-modal .modal-header{border-bottom:1px solid var(--relic-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.bulk-publish-modal .modal-header h2{font-size:18px;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.bulk-publish-body{flex:1;padding:20px;overflow-y:auto}.no-items{text-align:center;color:var(--relic-text-muted);margin:0;padding:20px;font-style:italic}.bulk-publish-summary{background:var(--relic-parchment);color:var(--relic-text);border-radius:4px;margin-bottom:16px;padding:12px 16px;font-size:14px}.bulk-publish-list{border:1px solid var(--relic-border);border-radius:8px;max-height:400px;margin:0;padding:0;list-style:none;overflow-y:auto}.bulk-publish-item{border-bottom:1px solid var(--relic-border);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.bulk-publish-item:last-child{border-bottom:none}.bulk-publish-item.no-draft{opacity:.5}.bulk-publish-item-info{flex:1;min-width:0}.bulk-publish-item-name{text-overflow:ellipsis;white-space:nowrap;color:var(--relic-text);font-size:14px;font-weight:500;display:block;overflow:hidden}.bulk-publish-item-path{color:var(--relic-text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;display:block;overflow:hidden}.bulk-publish-item-status{flex-shrink:0}.bulk-publish-item .status-badge{border-radius:4px;padding:3px 8px;font-size:11px;font-weight:500}.bulk-publish-item .status-badge.pending{color:var(--relic-nav-bg);background:#c9a22733}.bulk-publish-item .status-badge.checking,.bulk-publish-item .status-badge.no-draft{background:var(--relic-parchment-dark);color:var(--relic-text-muted)}.bulk-publish-item .status-badge.publishing{color:var(--relic-nav-bg);background:#c9a22726}.bulk-publish-item .status-badge.success{color:var(--relic-success);background:#5d7a3a33}.bulk-publish-item .status-badge.error{color:var(--relic-error);background:#8a3f3f33}.bulk-publish-modal .modal-footer{border-top:1px solid var(--relic-border);background:var(--relic-parchment);justify-content:flex-end;align-items:center;gap:12px;padding:16px 20px;display:flex}.bulk-publish-modal .modal-footer button{cursor:pointer;border-radius:4px;padding:10px 20px;font-size:14px}.bulk-publish-modal .publish-all-btn{background:var(--relic-success);color:var(--relic-parchment);border:none}.bulk-publish-modal .publish-all-btn:hover{background:#4a6732}.bulk-publish-modal .cancel-btn{background:var(--relic-parchment-light);border:1px solid var(--relic-border);color:var(--relic-text)}.bulk-publish-modal .cancel-btn:hover{background:var(--relic-parchment-dark)}.bulk-publish-modal .publish-videos-btn{background:var(--relic-accent);color:var(--relic-nav-bg);border:none}.bulk-publish-modal .publish-videos-btn:hover{background:#b08f30}.bulk-publish-item-status{flex-shrink:0;gap:6px;display:flex}.video-upload-modal-overlay{z-index:1000;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.video-upload-modal{background:var(--relic-parchment-light);border-radius:8px;flex-direction:column;width:90vw;max-width:600px;max-height:90vh;display:flex;box-shadow:0 4px 24px #2d1f144d}.video-upload-modal .modal-header{border-bottom:1px solid var(--relic-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.video-upload-modal .modal-header h2{font-size:18px;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.video-upload-body{flex:1;padding:20px;overflow-y:auto}.drop-zone{border:2px dashed var(--relic-border);text-align:center;cursor:pointer;background:var(--relic-parchment);border-radius:8px;padding:40px 20px;transition:all .2s}.drop-zone:hover{border-color:var(--relic-accent);background:#c9a2271a}.drop-zone.dragging{border-color:var(--relic-accent);background:#c9a22726;border-style:solid}.drop-zone-content{pointer-events:none}.drop-icon{margin-bottom:12px;font-size:48px;display:block}.drop-primary{color:var(--relic-text);margin:0 0 4px;font-size:16px;font-weight:500}.drop-secondary{color:var(--relic-text-muted);margin:0;font-size:14px}.upload-list{border:1px solid var(--relic-border);border-radius:8px;margin-top:20px;overflow:hidden}.upload-list-header{background:var(--relic-parchment);border-bottom:1px solid var(--relic-border);color:var(--relic-text);justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;font-weight:500;display:flex}.upload-stats{gap:12px;font-size:12px;font-weight:400;display:flex}.stat-success{color:var(--relic-success)}.stat-error{color:var(--relic-error)}.stat-pending{color:var(--relic-text-muted)}.upload-items{max-height:300px;margin:0;padding:0;list-style:none;overflow-y:auto}.upload-item{border-bottom:1px solid var(--relic-border);flex-direction:column;padding:12px 16px;display:flex}.upload-item:last-child{border-bottom:none}.upload-item-info{justify-content:space-between;align-items:center;gap:12px;display:flex}.upload-item-name{text-overflow:ellipsis;white-space:nowrap;color:var(--relic-text);flex:1;font-size:14px;overflow:hidden}.upload-item-size{color:var(--relic-text-muted);flex-shrink:0;font-size:12px}.upload-item-status{align-items:center;gap:8px;margin-top:8px;display:flex}.status-badge{border-radius:4px;padding:2px 8px;font-size:11px;font-weight:500}.status-badge.pending{background:var(--relic-parchment-dark);color:var(--relic-text-muted)}.status-badge.uploading{color:var(--relic-nav-bg);background:#c9a22726}.status-badge.success{color:var(--relic-success);background:#5d7a3a33}.status-badge.error{color:var(--relic-error);background:#8a3f3f33}.remove-item-btn{background:var(--relic-parchment-dark);cursor:pointer;width:20px;height:20px;color:var(--relic-text-muted);border:none;border-radius:50%;padding:0;font-size:14px;line-height:1}.remove-item-btn:hover{background:var(--relic-border);color:var(--relic-text)}.upload-progress{background:var(--relic-parchment-dark);border-radius:2px;height:4px;margin-top:8px;overflow:hidden}.upload-progress-bar{background:var(--relic-accent);border-radius:2px;height:100%;transition:width .3s}.upload-note{border:1px solid var(--relic-accent);color:var(--relic-nav-bg);background:#c9a22726;border-radius:4px;margin:16px 0 0;padding:12px;font-size:13px}.video-upload-modal .modal-footer{border-top:1px solid var(--relic-border);background:var(--relic-parchment);justify-content:flex-end;align-items:center;padding:16px 20px;display:flex}.video-upload-modal .cancel-btn{cursor:pointer;background:var(--relic-parchment-light);border:1px solid var(--relic-border);color:var(--relic-text);border-radius:4px;padding:10px 20px;font-size:14px}.video-upload-modal .cancel-btn:hover{background:var(--relic-parchment-dark)}.clone-course-modal-overlay{z-index:1000;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.clone-course-modal{background:var(--relic-parchment-light);border-radius:8px;flex-direction:column;width:90vw;max-width:520px;max-height:90vh;display:flex;box-shadow:0 4px 24px #2d1f144d}.clone-course-modal .modal-header{border-bottom:1px solid var(--relic-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.clone-course-modal .modal-header h2{font-size:18px;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.clone-course-modal .close-btn{cursor:pointer;color:var(--relic-text-muted);background:0 0;border:none;font-size:24px;line-height:1}.clone-course-body{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex;overflow-y:auto}.clone-source{color:var(--relic-text);margin:0;font-size:14px}.clone-field{flex-direction:column;gap:6px;display:flex}.clone-field-label{color:var(--relic-text);font-size:13px;font-weight:500}.clone-field input,.clone-field select{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;padding:8px 10px;font-size:14px}.clone-slice{border:1px solid var(--relic-border);border-radius:6px;flex-direction:column;gap:10px;margin:0;padding:12px 14px;display:flex}.clone-slice-toggle{color:var(--relic-text);cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.clone-slice-hint{color:var(--relic-text-muted);margin:0;font-size:12px}.clone-slice-bounds{gap:12px;display:flex}.clone-slice-bounds .clone-field{flex:1;min-width:0}.clone-slice-error{color:var(--relic-error);margin:0;font-size:12px}.clone-course-modal .modal-error{color:var(--relic-error);background:#8a3f3f26;border-radius:4px;margin:0 20px;padding:10px 12px;font-size:13px}.clone-course-modal .modal-footer{border-top:1px solid var(--relic-border);background:var(--relic-parchment);justify-content:flex-end;align-items:center;gap:12px;padding:16px 20px;display:flex}.clone-course-modal .modal-footer button{cursor:pointer;border-radius:4px;padding:10px 20px;font-size:14px}.clone-course-modal .clone-confirm-btn{background:var(--relic-success);color:var(--relic-parchment);border:none}.clone-course-modal .clone-confirm-btn:hover:not(:disabled){background:#4a6732}.clone-course-modal .clone-confirm-btn:disabled{opacity:.6;cursor:not-allowed}.clone-course-modal .clone-confirm-btn-secondary{color:var(--relic-success);border:1px solid var(--relic-success);background:0 0}.clone-course-modal .clone-confirm-btn-secondary:hover:not(:disabled){background:#4a67321f}.clone-course-modal .cancel-btn{background:var(--relic-parchment-light);border:1px solid var(--relic-border);color:var(--relic-text)}.clone-course-modal .cancel-btn:hover:not(:disabled){background:var(--relic-parchment-dark)}.edit-docs-modal-overlay{z-index:1000;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.edit-docs-modal{background:var(--relic-parchment-light);border-radius:8px;flex-direction:column;width:90vw;max-width:560px;max-height:90vh;display:flex;box-shadow:0 4px 24px #2d1f144d}.edit-docs-modal .modal-header{border-bottom:1px solid var(--relic-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.edit-docs-modal .modal-header h2{font-size:18px;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.edit-docs-modal .close-btn{cursor:pointer;color:var(--relic-text-muted);background:0 0;border:none;font-size:24px;line-height:1}.edit-docs-modal .close-btn:disabled{opacity:.5;cursor:not-allowed}.edit-docs-body{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex;overflow-y:auto}.edit-docs-source{color:var(--relic-text);margin:0;font-size:14px}.edit-docs-hint{color:var(--relic-text-muted);margin:0;font-size:13px}.edit-docs-empty{border:1px dashed var(--relic-border);color:var(--relic-text-muted);text-align:center;border-radius:6px;margin:0;padding:16px;font-size:13px}.edit-docs-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.edit-docs-row{border:1px solid var(--relic-border);background:var(--relic-parchment);border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.edit-docs-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--relic-text);flex:1;font-size:14px;overflow:hidden}.edit-docs-name a{color:var(--relic-text);text-decoration:underline}.edit-docs-row-actions{flex-shrink:0;gap:8px;display:flex}.edit-docs-row-actions button{cursor:pointer;border-radius:4px;padding:6px 12px;font-size:13px}.edit-docs-row-actions button:disabled{opacity:.6;cursor:not-allowed}.edit-docs-replace-btn{border:1px solid var(--relic-border);color:var(--relic-text);background:0 0}.edit-docs-replace-btn:hover:not(:disabled){background:var(--relic-parchment-dark)}.edit-docs-remove-btn{border:1px solid var(--relic-error);color:var(--relic-error);background:0 0}.edit-docs-remove-btn:hover:not(:disabled){background:#8a3f3f1f}.edit-docs-file-input{display:none}.edit-docs-modal .modal-error{color:var(--relic-error);background:#8a3f3f26;border-radius:4px;margin:0 20px;padding:10px 12px;font-size:13px}.edit-docs-modal .modal-footer{border-top:1px solid var(--relic-border);background:var(--relic-parchment);justify-content:flex-end;align-items:center;gap:12px;padding:16px 20px;display:flex}.edit-docs-modal .modal-footer button{cursor:pointer;border-radius:4px;padding:10px 20px;font-size:14px}.edit-docs-modal .edit-docs-add-btn{background:var(--relic-success);color:var(--relic-parchment);border:none;margin-right:auto}.edit-docs-modal .edit-docs-add-btn:hover:not(:disabled){background:#4a6732}.edit-docs-modal .edit-docs-add-btn:disabled{opacity:.6;cursor:not-allowed}.edit-docs-modal .cancel-btn{background:var(--relic-parchment-light);border:1px solid var(--relic-border);color:var(--relic-text)}.edit-docs-modal .cancel-btn:hover:not(:disabled){background:var(--relic-parchment-dark)}.edit-docs-modal .cancel-btn:disabled{opacity:.6;cursor:not-allowed}.course-preview{font-family:var(--relic-font-body);padding:1.5rem}.course-preview-loading,.course-preview-error{text-align:center;color:var(--relic-text-muted);padding:3rem;font-size:1rem}.course-preview-error{color:var(--relic-error)}.course-preview-header{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.course-preview-header h1{font-size:1.5rem;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.read-only-badge{background:var(--relic-warning);color:var(--relic-text);border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.edit-structure-btn{background:var(--relic-accent);color:var(--relic-nav-bg);cursor:pointer;border:none;border-radius:4px;margin-left:auto;padding:.5rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:background .15s}.edit-structure-btn:hover{background:var(--relic-accent-hover)}.course-preview-header .edit-options-btn{background:var(--relic-accent);color:var(--relic-nav-bg);cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:background .15s}.course-preview-header .edit-options-btn:hover{background:var(--relic-accent-hover)}.upload-videos-btn{background:var(--relic-nav-bg);color:var(--relic-parchment);cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;transition:background .15s}.upload-videos-btn:hover{background:var(--relic-text)}.course-preview-header .publish-all-btn{background:var(--relic-success);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;transition:background .15s}.course-preview-header .publish-all-btn:hover{background:#4a6830}.course-preview-header .clone-course-btn{background:var(--relic-accent);color:var(--relic-nav-bg);cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;transition:background .15s}.course-preview-header .clone-course-btn:hover{background:var(--relic-accent-hover)}.course-preview-header .edit-documents-btn{background:var(--relic-accent);color:var(--relic-nav-bg);cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;transition:background .15s}.course-preview-header .edit-documents-btn:hover{background:var(--relic-accent-hover)}.course-documents{background:var(--relic-parchment-light);border:1px solid var(--relic-border);border-radius:8px;margin-bottom:1.5rem;padding:1rem}.course-documents h2{font-size:1rem;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0 0 .75rem}.course-documents ul{margin:0;padding:0;list-style:none}.course-documents li{margin:.25rem 0}.course-documents a{color:var(--relic-accent);text-decoration:none;transition:color .15s}.course-documents a:hover{color:var(--relic-accent-hover);text-decoration:underline}.course-tree{border-left:2px solid var(--relic-border)}.course-tree-item{margin:.25rem 0}.course-tree-item-row{background:var(--relic-parchment-light);border-radius:4px;align-items:center;gap:.5rem;padding:.5rem .75rem;transition:background .15s;display:flex}.course-tree-item-row:hover{background:var(--relic-parchment-dark)}.item-name{color:var(--relic-text);flex:1;font-size:.875rem}.item-name.header{font-size:1rem;font-weight:600;font-family:var(--relic-font-heading)}.item-name.clickable{font:inherit;color:var(--relic-accent);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;text-decoration:none;transition:color .15s}.item-name.clickable:hover{color:var(--relic-accent-hover);text-decoration:underline}.item-type{color:var(--relic-text-muted);background:var(--relic-parchment-dark);text-transform:uppercase;letter-spacing:.025em;border-radius:3px;padding:.15rem .4rem;font-family:monospace;font-size:.65rem}.publish-section-btn{background:var(--relic-success);color:#fff;cursor:pointer;border:none;border-radius:3px;margin-left:.5rem;padding:.2rem .5rem;font-size:.65rem;transition:background .15s}.publish-section-btn:hover{background:#4a6830}.item-additional-info{color:var(--relic-text-muted);padding:.25rem .75rem;font-size:.75rem;font-style:italic}.modal-overlay{z-index:1000;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--relic-parchment-light);border-radius:8px;flex-direction:column;width:95vw;max-width:800px;max-height:90vh;display:flex;box-shadow:0 4px 24px #2d1f144d}.modal-header{border-bottom:1px solid var(--relic-border);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.modal-header h2{font-size:1.125rem;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.close-btn{cursor:pointer;color:var(--relic-text-muted);background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1;transition:color .15s}.close-btn:hover{color:var(--relic-text)}.modal-body{flex:1;padding:1.25rem;overflow:auto}.activity-data-modal-overlay{z-index:1100;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.activity-data-modal{background:var(--relic-parchment-light);border-radius:8px;flex-direction:column;width:90vw;max-width:600px;max-height:90vh;display:flex;box-shadow:0 4px 24px #2d1f144d}.activity-data-modal .modal-header{border-bottom:1px solid var(--relic-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.activity-data-modal .modal-header h2{font-size:18px;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.activity-data-modal .close-btn{cursor:pointer;color:var(--relic-text-muted);background:0 0;border:none;padding:0;font-size:24px;line-height:1}.activity-data-modal .close-btn:hover{color:var(--relic-text)}.activity-data-modal-body{flex:1;padding:20px;overflow-y:auto}.activity-data-modal .modal-loading,.activity-data-modal .modal-error{text-align:center;color:var(--relic-text);padding:20px}.activity-data-modal .modal-error{color:var(--relic-error)}.activity-options-form{flex-direction:column;gap:16px;display:flex}.form-row{flex-direction:column;gap:4px;display:flex}.form-row label{color:var(--relic-text);font-size:14px;font-weight:500}.form-row input[type=text],.form-row input[type=number],.form-row select{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;padding:8px 12px;font-size:14px}.form-row input[type=text]:focus,.form-row input[type=number]:focus,.form-row select:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.form-row input:disabled,.form-row select:disabled{background:var(--relic-parchment-dark);cursor:not-allowed}.form-row.readonly{flex-direction:row;align-items:center;gap:12px}.form-row.readonly label{min-width:140px}.readonly-value{color:var(--relic-text-muted);background:var(--relic-parchment-dark);word-break:break-all;border-radius:4px;padding:4px 8px;font-family:monospace;font-size:14px}.form-row.checkbox-row{flex-direction:row;align-items:center}.form-row.checkbox-row label{cursor:pointer;align-items:center;gap:8px;font-weight:400;display:flex}.form-row.checkbox-row input[type=checkbox]{cursor:pointer;width:16px;height:16px}.form-section-header{color:var(--relic-text);border-bottom:1px solid var(--relic-border);justify-content:space-between;align-items:center;margin-top:8px;padding-bottom:4px;font-size:14px;font-weight:600;display:flex}.insert-defaults-btn{background:var(--relic-parchment);border:1px solid var(--relic-border);cursor:pointer;color:var(--relic-text);border-radius:4px;padding:4px 10px;font-size:12px}.insert-defaults-btn:hover:not(:disabled){background:var(--relic-parchment-dark)}.insert-defaults-btn:disabled{opacity:.5;cursor:not-allowed}.object-grading-table{border-collapse:collapse;width:100%;font-size:13px}.object-grading-table th,.object-grading-table td{text-align:left;border:1px solid var(--relic-border);padding:8px}.object-grading-table th{background:var(--relic-parchment-dark);color:var(--relic-text);font-weight:600}.object-grading-table td{color:var(--relic-text)}.object-grading-table td:first-child{font-weight:500}.object-grading-table input[type=number]{border:1px solid var(--relic-border);background:var(--relic-parchment-light);width:70px;color:var(--relic-text);border-radius:3px;padding:4px 6px;font-size:13px}.object-grading-table input[type=checkbox]{cursor:pointer;width:16px;height:16px}.object-grading-table input:disabled{cursor:not-allowed}.activity-data-modal .modal-footer{border-top:1px solid var(--relic-border);background:var(--relic-parchment);justify-content:flex-end;gap:12px;padding:16px 20px;display:flex}.activity-data-modal .cancel-btn,.activity-data-modal .save-btn{cursor:pointer;border-radius:4px;padding:8px 20px;font-size:14px}.activity-data-modal .cancel-btn{background:var(--relic-parchment-light);border:1px solid var(--relic-border);color:var(--relic-text)}.activity-data-modal .cancel-btn:hover{background:var(--relic-parchment-dark)}.activity-data-modal .save-btn{background:var(--relic-nav-bg);border:1px solid var(--relic-nav-bg);color:var(--relic-parchment)}.activity-data-modal .save-btn:hover:not(:disabled){background:var(--relic-text)}.activity-data-modal .save-btn:disabled{opacity:.5;cursor:not-allowed}.ctk-reader-wrap{flex-direction:column;width:100%;height:100%;min-height:0;display:flex;position:relative}.ctk-reader-host{flex:auto;width:100%;min-height:0}.activity-page{flex-direction:column;height:100%;min-height:calc(100vh - 50px);display:flex}.activity-page-error{text-align:center;color:var(--relic-error);padding:2rem}.activity-header{background:var(--relic-parchment-light);border-bottom:1px solid var(--relic-border);padding:1rem 1.5rem}.activity-title{align-items:center;gap:.75rem;display:flex}.activity-title h1{margin:0;font-size:1.25rem}.version-badge,.mode-badge{text-transform:uppercase;letter-spacing:.025em;border-radius:4px;padding:.2rem .5rem;font-size:.7rem;font-weight:500}.version-badge{background:var(--relic-success);color:#fff}.version-badge.draft{background:var(--relic-warning);color:var(--relic-text)}.mode-badge{background:var(--relic-text-muted);color:#fff}.activity-controls{background:var(--relic-parchment-dark);border-bottom:1px solid var(--relic-border);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 1.5rem;display:flex}.activity-controls label{color:var(--relic-text);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.activity-controls select{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;padding:.4rem .6rem;font-size:.85rem}.activity-controls select:focus{border-color:var(--relic-accent);outline:none}.activity-controls button{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.85rem;transition:background .15s}.activity-controls button:hover:not(:disabled){background:var(--relic-parchment);border-color:var(--relic-text-muted)}.activity-controls button:disabled{opacity:.5;cursor:not-allowed}.activity-controls .publish-btn{background:var(--relic-success);color:#fff;border-color:var(--relic-success)}.activity-controls .publish-btn:hover:not(:disabled){background:#4a6830}.activity-controls .draft-media-checkbox{cursor:pointer;margin-left:auto}.activity-controls .draft-media-checkbox input{cursor:pointer}.activity-controls .ctk-mode-note{color:var(--relic-text-muted);font-size:.9rem;font-style:italic}.activity-content{flex:1;min-height:0;display:flex}.ctk-preview-status{color:var(--relic-text-muted);flex:1;justify-content:center;align-items:center;font-size:.95rem;display:flex}.activity-iframe{background:#fff;border:none;flex:1;width:100%;height:100%}.task-editor{font-family:var(--relic-font-body);border:1px solid var(--relic-border);background:var(--relic-parchment-light);border-radius:4px}.task-editor-error{text-align:center;padding:1rem}.task-editor-error .error-message{color:var(--relic-error);margin-bottom:.5rem}.task-editor-header{background:var(--relic-parchment-dark);border-bottom:1px solid var(--relic-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 1rem;display:flex}.task-editor-meta{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.task-editor-meta label{color:var(--relic-text);align-items:center;gap:.25rem;font-size:.875rem;display:flex}.task-editor-meta select,.task-editor-meta input[type=number]{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:3px;padding:.25rem .5rem;font-size:.875rem}.task-editor-meta input[type=number]{width:60px}.toggle-raw{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);cursor:pointer;border-radius:3px;padding:.25rem .75rem;font-size:.875rem;transition:all .15s}.toggle-raw:hover{background:var(--relic-parchment)}.toggle-raw.active{background:var(--relic-nav-bg);color:var(--relic-parchment);border-color:var(--relic-nav-bg)}.task-editor-raw{padding:.5rem}.task-editor-raw textarea{border:1px solid var(--relic-border);resize:vertical;box-sizing:border-box;background:var(--relic-parchment-light);width:100%;min-height:300px;color:var(--relic-text);border-radius:3px;padding:.5rem;font-family:Consolas,Monaco,monospace;font-size:.875rem}.task-editor-raw .parse-error{color:var(--relic-error);margin-top:.25rem;font-size:.875rem}.task-editor-parts{flex-direction:column;gap:.5rem;padding:.5rem;display:flex}.part-editor{border:1px solid var(--relic-border);background:var(--relic-parchment);border-radius:4px;padding:.75rem}.part-editor label{color:var(--relic-text-muted);margin-bottom:.25rem;font-size:.75rem;display:block}.part-editor textarea,.part-editor input[type=text],.part-editor input[type=number]{border:1px solid var(--relic-border);box-sizing:border-box;background:var(--relic-parchment-light);width:100%;color:var(--relic-text);border-radius:3px;padding:.375rem .5rem;font-size:.875rem}.part-editor textarea{resize:vertical;font-family:inherit}.part-text textarea{font-family:Consolas,Monaco,monospace}.part-choicegroup{background:#c9a22714}.choicegroup-header{justify-content:space-between;margin-bottom:.5rem;font-size:.75rem;display:flex}.choicegroup-type{color:var(--relic-nav-bg);font-weight:600}.choicegroup-id{color:var(--relic-text-muted)}.choicegroup-choices{flex-direction:column;gap:.375rem;display:flex}.choicegroup-choice{align-items:center;gap:.5rem;display:flex}.choicegroup-choice input[type=radio],.choicegroup-choice input[type=checkbox]{margin:0}.choice-content-input{flex:1}.choice-content-editor{flex-direction:column;flex:1;gap:.375rem;display:flex}.choice-content-editor .choice-content-input{width:100%}.choice-add-image-btn{align-self:flex-start;padding:.15rem .5rem;font-size:.8rem}.choice-content-editor .part-image{margin:0}.choice-image-remove-btn{cursor:pointer;color:var(--relic-text-muted,#8a7a66);background:0 0;border:none;font-size:1rem;line-height:1}.part-choice{background:var(--relic-parchment-light);align-items:center;gap:.75rem;display:flex}.part-choice.correct{border-color:var(--relic-success);background:#5d7a3a1a}.part-choice>label{white-space:nowrap;align-items:center;gap:.25rem;margin-bottom:0;display:flex}.part-choice .choice-content-input{flex:1}.part-input{background:#c9a2270d}.part-image{background:#277ac90d}.part-image-preview img{border:1px solid var(--relic-border,#d8c9a8);border-radius:4px;max-width:100%;max-height:200px;margin-bottom:.5rem}.part-image-empty{color:var(--relic-text-muted,#8a7a66);margin-bottom:.5rem;font-size:.8rem;font-style:italic}.part-image-field{flex-direction:column;gap:.25rem;margin-bottom:.5rem;display:flex}.part-image-dimensions{gap:1rem;margin-bottom:.5rem;display:flex}.part-image-dimensions label{align-items:center;gap:.25rem;margin-bottom:0;display:flex}.part-image-upload{margin-bottom:.25rem}.part-image-error{color:var(--relic-error,#b00020);font-size:.8rem}.input-meta{gap:1rem;margin-bottom:.5rem;display:flex}.input-meta label{align-items:center;gap:.25rem;margin-bottom:0;display:flex}.input-meta select{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:3px;padding:.25rem .5rem;font-size:.875rem}.input-dimensions{gap:1rem;margin-top:.5rem;display:flex}.input-dimensions label{align-items:center;gap:.25rem;margin-bottom:0;display:flex}.input-dimensions input{width:80px}.part-container{background:var(--relic-parchment);border-left:3px solid var(--relic-text-muted)}.container-header{gap:.5rem;margin-bottom:.5rem;font-family:Consolas,Monaco,monospace;font-size:.75rem;display:flex}.container-tag{color:var(--relic-nav-bg);font-weight:600}.container-class{color:var(--relic-accent-hover,#a68820)}.container-children{border-left:1px dashed var(--relic-border);flex-direction:column;gap:.25rem;margin-left:.75rem;padding-left:.75rem;display:flex}.container-child-wrapper,.part-with-controls{flex-direction:column;gap:.25rem;display:flex}.part-header,.input-header{justify-content:space-between;align-items:center;margin-bottom:.25rem;display:flex}.part-delete-btn,.choice-delete-btn{color:var(--relic-text-muted);cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1.25rem;line-height:1}.part-delete-btn:hover,.choice-delete-btn:hover{color:var(--relic-error)}.add-part-button-container{justify-content:center;height:20px;display:flex;position:relative}.add-part-button{border:1px dashed var(--relic-border);background:var(--relic-parchment-light);width:20px;height:20px;color:var(--relic-text-muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:1rem;line-height:1;display:flex}.add-part-button:hover{border-color:var(--relic-accent);color:var(--relic-accent);background:#c9a2271a}.add-part-menu{background:var(--relic-parchment-light);border:1px solid var(--relic-border);z-index:100;border-radius:4px;min-width:180px;position:absolute;top:100%;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #2d1f1433}.add-part-option{text-align:left;cursor:pointer;width:100%;color:var(--relic-text);background:0 0;border:none;padding:.5rem .75rem;font-size:.875rem;display:block}.add-part-option:hover{background:#c9a2271a}.add-part-option:first-child{border-radius:4px 4px 0 0}.add-part-option:last-child{border-radius:0 0 4px 4px}.add-choice-btn{border:1px dashed var(--relic-border);color:var(--relic-text-muted);cursor:pointer;background:0 0;border-radius:3px;margin-top:.25rem;padding:.25rem .5rem;font-size:.75rem}.add-choice-btn:hover{border-color:var(--relic-accent);color:var(--relic-accent)}.container-tag-input,.container-class-input{border:1px solid var(--relic-border);background:var(--relic-parchment-light);width:60px;color:var(--relic-text);border-radius:2px;padding:.125rem .25rem;font-family:Consolas,Monaco,monospace;font-size:.75rem}.container-header{align-items:center;gap:.5rem;margin-bottom:.5rem;font-family:Consolas,Monaco,monospace;font-size:.75rem;display:flex}.choicegroup-header{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.75rem;display:flex}.choicegroup-header select{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:2px;padding:.125rem .25rem;font-size:.75rem}.image-editor-wrapper{display:inline-block;position:relative}.image-editor-wrapper.editable{cursor:pointer}.image-editor-wrapper img{border-radius:4px;max-width:100%;height:auto;display:block}.image-editor-overlay{opacity:0;pointer-events:none;background:#2d1f1499;border-radius:4px;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;inset:0}.image-editor-wrapper.editable:hover .image-editor-overlay{opacity:1}.image-editor-icon{background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;padding:6px 12px;font-size:14px;font-weight:500}.image-editor-modal{z-index:10001;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.image-editor-content{background:var(--relic-parchment-light);border-radius:8px;width:90%;max-width:500px;max-height:90vh;padding:1.5rem;overflow-y:auto;box-shadow:0 4px 20px #2d1f144d}.image-editor-content h3{font-size:1.125rem;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0 0 1rem}.image-editor-preview{background:var(--relic-parchment);border:1px solid var(--relic-border);text-align:center;border-radius:4px;margin-bottom:1rem;padding:1rem}.image-editor-preview img{border-radius:4px;max-width:100%;max-height:200px}.image-editor-field{margin-bottom:1rem}.image-editor-field label{color:var(--relic-text);margin-bottom:.375rem;font-size:.875rem;font-weight:500;display:block}.image-editor-field input[type=text],.image-editor-field textarea{border:1px solid var(--relic-border);box-sizing:border-box;background:var(--relic-parchment-light);width:100%;color:var(--relic-text);border-radius:4px;padding:.5rem .75rem;font-family:inherit;font-size:.875rem}.image-editor-field textarea{resize:vertical}.image-editor-field input:focus,.image-editor-field textarea:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.image-editor-src-row{gap:.5rem;display:flex}.image-editor-src-row input{flex:1}.image-editor-src-row button{border:1px solid var(--relic-border);background:var(--relic-parchment);color:var(--relic-text);cursor:pointer;white-space:nowrap;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;transition:all .15s}.image-editor-src-row button:hover:not(:disabled){background:var(--relic-parchment-dark)}.image-editor-src-row button:disabled{opacity:.6;cursor:not-allowed}.image-editor-actions{justify-content:flex-end;gap:.5rem;margin-top:1.25rem;display:flex}.image-editor-actions button{border:1px solid var(--relic-border);background:var(--relic-parchment);color:var(--relic-text);cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;transition:all .15s}.image-editor-actions button:hover{background:var(--relic-parchment-dark)}.image-editor-actions button.primary{background:var(--relic-nav-bg);border-color:var(--relic-nav-bg);color:var(--relic-parchment)}.image-editor-actions button.primary:hover{background:var(--relic-text)}.image-editor-actions button.danger{background:var(--relic-error);border-color:var(--relic-error);color:#fff}.image-editor-actions button.danger:hover{background:#6b2929}.image-editor-spacer{flex:1}.image-editor-size-row{gap:1rem;display:flex}.image-editor-size-row .image-editor-field{flex:1}.video-editor-wrapper{cursor:default;display:inline-block;position:relative}.video-editor-wrapper.editable{cursor:pointer}.video-editor-wrapper.editable:hover .video-editor-overlay{opacity:1}.video-placeholder{background:linear-gradient(135deg, var(--relic-nav-bg) 0%, var(--relic-text) 100%);border:2px dashed var(--relic-text-muted);min-width:320px;min-height:180px;color:var(--relic-nav-text);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1rem;display:flex}.video-placeholder .video-icon{color:var(--relic-accent);font-size:3rem}.video-placeholder .video-label{color:var(--relic-border);font-family:monospace;font-size:.875rem}.video-editor-overlay{opacity:0;background:#2d1f14b3;border-radius:8px;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;inset:0}.video-editor-icon{background:var(--relic-accent);color:var(--relic-nav-bg);border-radius:4px;padding:.5rem 1rem;font-size:.875rem;font-weight:500}.video-editor-modal{z-index:10001;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.video-editor-content{background:var(--relic-parchment-light);border-radius:8px;width:90%;max-width:500px;padding:1.5rem;box-shadow:0 4px 20px #2d1f144d}.video-editor-content h3{font-size:1.125rem;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0 0 1rem}.video-editor-preview{margin-bottom:1rem}.video-placeholder-large{background:linear-gradient(135deg, var(--relic-nav-bg) 0%, var(--relic-text) 100%);height:150px;color:var(--relic-nav-text);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;display:flex}.video-placeholder-large .video-icon{color:var(--relic-accent);font-size:2.5rem}.video-placeholder-large .video-id{color:var(--relic-border);font-family:monospace;font-size:.875rem}.video-editor-field{margin-bottom:1rem}.video-editor-field label{color:var(--relic-text);margin-bottom:.375rem;font-size:.875rem;font-weight:500;display:block}.video-editor-field input[type=text]{border:1px solid var(--relic-border);background:var(--relic-parchment-light);width:100%;color:var(--relic-text);border-radius:4px;padding:.5rem;font-family:monospace;font-size:.875rem}.video-editor-field input:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.video-editor-upload-row button{border:1px solid var(--relic-border);background:var(--relic-parchment);color:var(--relic-text);cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;transition:all .15s}.video-editor-upload-row button:hover:not(:disabled){background:var(--relic-parchment-dark)}.video-editor-upload-row button:disabled{opacity:.5;cursor:not-allowed}.video-editor-actions{justify-content:flex-end;gap:.5rem;margin-top:1.5rem;display:flex}.video-editor-actions button{border:1px solid var(--relic-border);background:var(--relic-parchment);color:var(--relic-text);cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;transition:all .15s}.video-editor-actions button:hover{background:var(--relic-parchment-dark)}.video-editor-actions button.primary{background:var(--relic-nav-bg);color:var(--relic-parchment);border-color:var(--relic-nav-bg)}.video-editor-actions button.primary:hover{background:var(--relic-text)}.cr-browse-overlay{z-index:10100;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.cr-browse-modal{background:var(--relic-parchment-light);border-radius:8px;flex-direction:column;width:90vw;max-width:560px;max-height:80vh;display:flex;box-shadow:0 4px 24px #2d1f144d}.cr-browse-modal .modal-header{border-bottom:1px solid var(--relic-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.cr-browse-modal .modal-header h2{font-size:18px;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.cr-browse-modal .close-btn{cursor:pointer;color:var(--relic-text);background:0 0;border:none;font-size:24px;line-height:1}.cr-breadcrumbs{border-bottom:1px solid var(--relic-border);flex-wrap:wrap;align-items:center;gap:2px;padding:10px 20px;font-size:13px;display:flex}.cr-crumb{align-items:center;gap:2px;display:inline-flex}.cr-crumb-sep{color:var(--relic-text-muted,#8a7a66);margin:0 2px}.cr-crumb-link{color:var(--relic-accent,#2563eb);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;text-decoration:underline}.cr-crumb-current{color:var(--relic-text);font-weight:600}.cr-filter{border-bottom:1px solid var(--relic-border);align-items:center;gap:6px;padding:10px 20px;display:flex}.cr-filter-input{border:1px solid var(--relic-border);color:var(--relic-text);background:var(--relic-parchment-light);border-radius:6px;flex:1;padding:6px 10px;font-size:14px}.cr-filter-clear{cursor:pointer;color:var(--relic-text-muted,#8a7a66);background:0 0;border:none;padding:0 4px;font-size:20px;line-height:1}.cr-upload-btn{border:1px solid var(--relic-border);cursor:pointer;color:var(--relic-text);background:var(--relic-parchment-light);white-space:nowrap;border-radius:6px;padding:6px 12px;font-size:13px}.cr-upload-btn:disabled{opacity:.6;cursor:default}.cr-browse-body{flex:1;min-height:200px;padding:8px 12px;overflow-y:auto}.cr-status{text-align:center;color:var(--relic-text-muted,#8a7a66);padding:24px}.cr-status.cr-error{color:#b42318}.cr-list{margin:0;padding:0;list-style:none}.cr-empty{text-align:center;color:var(--relic-text-muted,#8a7a66);padding:24px}.cr-row-btn{text-align:left;cursor:pointer;width:100%;color:var(--relic-text);background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-size:14px;display:flex}.cr-row-btn:hover:not(:disabled){background:#c9a2271f}.cr-row-btn:disabled{cursor:not-allowed;opacity:.5}.cr-row.cr-selected .cr-row-btn{background:#c9a22738;font-weight:600}.cr-icon{flex:none}.cr-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cr-browse-modal .modal-footer{border-top:1px solid var(--relic-border);align-items:center;gap:10px;padding:12px 20px;display:flex}.cr-selected-label{color:var(--relic-text-muted,#8a7a66);text-overflow:ellipsis;white-space:nowrap;flex:1;font-family:monospace;font-size:12px;overflow:hidden}.cr-browse-modal .cancel-btn,.cr-browse-modal .confirm-btn{cursor:pointer;border:1px solid var(--relic-border);border-radius:6px;padding:8px 16px;font-size:14px}.cr-browse-modal .cancel-btn{background:var(--relic-parchment);color:var(--relic-text)}.cr-browse-modal .confirm-btn{background:var(--relic-accent,#2563eb);color:#fff;border-color:#0000;margin-left:auto}.cr-browse-modal .confirm-btn:disabled{opacity:.5;cursor:not-allowed}.floating-toolbar{background:var(--relic-nav-bg);z-index:10000;border-radius:4px;align-items:center;gap:2px;padding:4px 6px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 2px 8px #2d1f1466}.floating-toolbar:after{content:"";border-left:6px solid #0000;border-right:6px solid #0000;border-top:6px solid var(--relic-nav-bg);position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.floating-toolbar button{width:28px;height:28px;color:var(--relic-nav-text);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:0;font-size:14px;transition:all .15s;display:flex}.floating-toolbar button:hover{color:var(--relic-accent);background:#c9a22733}.floating-toolbar button:active{background:#c9a2274d}.toolbar-divider{background:#d4c4a84d;width:1px;height:20px;margin:0 4px}.toolbar-link-input{align-items:center;gap:4px;display:flex}.toolbar-link-input input{background:var(--relic-parchment-light);width:180px;color:var(--relic-text);border:none;border-radius:3px;padding:4px 8px;font-size:13px}.toolbar-link-input input:focus{outline:none;box-shadow:0 0 0 2px #c9a22766}.toolbar-link-input input.toolbar-link-text{width:120px}.toolbar-link-newtab{color:var(--relic-nav-text);white-space:nowrap;cursor:pointer;align-items:center;gap:3px;font-size:11px;display:flex}.toolbar-link-newtab input[type=checkbox]{cursor:pointer;width:auto;margin:0}.toolbar-link-input button{width:24px;height:24px;font-size:12px}.toolbar-link-input button.toolbar-closereader-btn{white-space:nowrap;width:auto;padding:0 8px}.toolbar-qid-dropdown{flex-direction:column;min-width:180px;max-width:250px;display:flex}.toolbar-qid-header{color:var(--relic-nav-text);border-bottom:1px solid #d4c4a84d;justify-content:space-between;align-items:center;margin-bottom:4px;padding:2px 4px;font-size:12px;display:flex}.toolbar-qid-header button{width:20px;height:20px;font-size:10px}.toolbar-qid-list{flex-direction:column;gap:2px;max-height:150px;display:flex;overflow-y:auto}.toolbar-qid-item{text-overflow:ellipsis;white-space:nowrap;font-family:monospace;overflow:hidden;justify-content:flex-start!important;width:100%!important;padding:4px 8px!important;font-size:12px!important}.toolbar-qid-empty{color:var(--relic-nav-text);opacity:.7;text-align:center;padding:8px;font-size:12px}.frame-editor{font-family:var(--relic-font-body);padding:1rem;line-height:1.5}.frame-editor [contenteditable=true]{border-radius:2px;outline:none;transition:background-color .15s}.frame-editor [contenteditable=true]:hover{background-color:#c9a2270d}.frame-editor [contenteditable=true]:focus{background-color:#c9a2271a;box-shadow:0 0 0 2px #c9a2274d}.frame-editor-fstack{border:2px dashed var(--relic-border);background-color:var(--relic-parchment-light);border-radius:4px;margin:8px 0;padding:12px;position:relative}.frame-editor-fstack:before{content:"Stack";background:var(--relic-text-muted);color:#fff;text-transform:uppercase;letter-spacing:.5px;border-radius:3px;padding:2px 6px;font-size:10px;font-weight:600;position:absolute;top:-10px;left:8px}.frame-editor-placeholder{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;align-items:center;margin:2px;padding:4px 10px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.frame-editor-qid{color:var(--relic-nav-bg);border:1px solid var(--relic-accent);background-color:#c9a22726}.frame-editor-qid:hover{border-color:var(--relic-accent-hover);background-color:#c9a22740}.frame-editor-taskid{background-color:var(--relic-parchment-dark);color:var(--relic-text-muted);border:1px solid var(--relic-border)}.frame-editor-taskid:hover{background-color:var(--relic-parchment);border-color:var(--relic-text-muted)}.frame-editor-fdone{color:var(--relic-success);border:1px solid var(--relic-success);-webkit-user-select:none;user-select:none;background-color:#5d7a3a26;border-radius:4px;align-items:center;margin:4px 0;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.frame-editor img{border-radius:4px;max-width:100%;height:auto}.frame-editor .left-column{float:left;width:48%;padding-right:2%}.frame-editor .right-column{float:right;width:48%;padding-left:2%}.frame-editor .content:after{content:"";clear:both;display:table}.frame-editor .title-bar{background:linear-gradient(135deg, var(--relic-nav-bg) 0%, var(--relic-text) 100%);color:var(--relic-parchment);border-radius:4px;margin-bottom:16px;padding:8px 16px}.frame-editor .title-bar h1{font-size:18px;font-weight:600;font-family:var(--relic-font-heading);color:var(--relic-parchment);margin:0}.frame-editor .content{padding:8px}.stack-editor-overlay{z-index:1300;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.stack-editor-content{background:var(--relic-parchment-light);border-radius:8px;width:90%;max-width:480px;max-height:85vh;padding:1.5rem;overflow-y:auto;box-shadow:0 4px 20px #2d1f144d}.stack-editor-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.stack-editor-header h4{font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.stack-editor-close{cursor:pointer;color:var(--relic-text-muted);background:0 0;border:none;font-size:1.5rem;line-height:1}.stack-editor-close:hover{color:var(--relic-text)}.stack-editor-error{color:var(--relic-error);margin-bottom:.75rem;font-size:.875rem}.stack-editor-section{margin-bottom:1.25rem}.stack-editor-section h5{color:var(--relic-text);margin:0 0 .5rem;font-size:.9rem}.stack-editor-empty{color:var(--relic-text-muted);margin:0;font-size:.85rem}.stack-editor-hint{color:var(--relic-text-muted);margin:0 0 .5rem;font-size:.8rem}.stack-editor-task-list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.stack-editor-task{border:1px solid var(--relic-border);background:var(--relic-parchment);color:var(--relic-text);border-radius:4px;align-items:center;gap:.5rem;padding:.375rem .5rem;font-family:monospace;font-size:.8rem;display:flex}.stack-editor-task-kind{width:1.25rem;height:1.25rem;color:var(--relic-parchment);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:inline-flex}.stack-editor-task-kind.question{background:var(--relic-success)}.stack-editor-task-kind.custom{background:var(--relic-text-muted)}.stack-editor-audio-row{align-items:center;gap:.5rem;display:flex}.stack-editor-audio-row input[type=text]{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;flex:1;padding:.375rem .5rem;font-size:.85rem}.stack-editor-play-btn,.stack-editor-upload-btn,.stack-editor-remove-btn{border:1px solid var(--relic-border);background:var(--relic-parchment);cursor:pointer;color:var(--relic-text);border-radius:4px;flex-shrink:0;padding:.375rem .625rem;font-size:.85rem}.stack-editor-play-btn:hover:not(:disabled),.stack-editor-upload-btn:hover:not(:disabled){background:var(--relic-parchment-dark)}.stack-editor-remove-btn{color:var(--relic-error);border-color:var(--relic-error)}.stack-editor-remove-btn:hover:not(:disabled){background:var(--relic-error);color:var(--relic-parchment)}.stack-editor-upload-btn:disabled,.stack-editor-remove-btn:disabled{opacity:.5;cursor:not-allowed}.stack-editor-actions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.stack-editor-actions button{border:1px solid var(--relic-border);background:var(--relic-parchment-light);cursor:pointer;color:var(--relic-text);border-radius:4px;padding:.375rem .875rem;font-size:.875rem}.stack-editor-actions button:hover:not(:disabled){background:var(--relic-parchment)}.stack-editor-actions button.primary{background:var(--relic-success);border-color:var(--relic-success);color:var(--relic-parchment)}.stack-editor-actions button.primary:hover:not(:disabled){background:#4a6732}.stack-editor-actions button:disabled{opacity:.5;cursor:not-allowed}.fc-stack-edit-btn{cursor:pointer;color:var(--relic-accent);background:0 0;border:none;padding:0 .5rem;font-size:.75rem}.fc-stack-edit-btn:hover{text-decoration:underline}.fc-stack-label-row{justify-content:space-between;align-items:center;display:flex}.fc-frame-item{align-items:stretch;gap:.25rem;margin-bottom:.4rem;display:flex}.fc-frame-drag-handle{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text-muted);cursor:grab;touch-action:none;border-radius:4px;justify-content:center;align-items:center;padding:0 .4rem;display:flex}.fc-frame-drag-handle:hover{background:var(--relic-parchment);color:var(--relic-text)}.fc-frame-drag-handle:active{cursor:grabbing}.fc-frame-item .fc-frame-btn{text-align:left;border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);cursor:pointer;font:inherit;border-radius:4px;flex-direction:column;flex:1;align-items:flex-start;gap:.15rem;padding:.5rem .6rem;display:flex}.fc-frame-btn:hover{background:var(--relic-parchment)}.fc-frame-btn.selected{background:var(--relic-accent);color:#fff;border-color:var(--relic-accent)}.fc-frame-btn .task-count{opacity:.8;font-size:.72rem}.fc-frame-remove-btn{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text-muted);cursor:pointer;border-radius:4px;padding:0 .5rem;font-size:1rem;line-height:1}.fc-frame-remove-btn:hover:not(:disabled){color:#fff;background:#d9534f;border-color:#d9534f}.fc-frame-remove-btn:disabled{opacity:.4;cursor:default}.frame-entry-audio{border:1px solid var(--relic-border);background:var(--relic-parchment);border-radius:6px;margin-bottom:.75rem;padding:.625rem .75rem}.frame-entry-audio-row{align-items:center;gap:.5rem;display:flex}.frame-entry-audio-label{color:var(--relic-text);flex-shrink:0;font-size:.85rem;font-weight:600}.frame-entry-audio-row input[type=text]{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;flex:1;padding:.375rem .5rem;font-size:.85rem}.frame-entry-audio-play-btn,.frame-entry-audio-upload-btn,.frame-entry-audio-save-btn,.frame-entry-audio-remove-btn{border:1px solid var(--relic-border);background:var(--relic-parchment-light);cursor:pointer;color:var(--relic-text);border-radius:4px;flex-shrink:0;padding:.375rem .625rem;font-size:.85rem}.frame-entry-audio-play-btn:hover:not(:disabled),.frame-entry-audio-upload-btn:hover:not(:disabled),.frame-entry-audio-save-btn:hover:not(:disabled){background:var(--relic-parchment-dark)}.frame-entry-audio-remove-btn{color:var(--relic-error);border-color:var(--relic-error)}.frame-entry-audio-remove-btn:hover:not(:disabled){background:var(--relic-error);color:var(--relic-parchment)}.frame-entry-audio-save-btn{background:var(--relic-success);border-color:var(--relic-success);color:var(--relic-parchment)}.frame-entry-audio-save-btn:hover:not(:disabled){background:#4a6732}.frame-entry-audio-upload-btn:disabled,.frame-entry-audio-save-btn:disabled,.frame-entry-audio-remove-btn:disabled{opacity:.5;cursor:not-allowed}.frame-entry-audio-help{color:var(--relic-text-muted);margin:.5rem 0 0;font-size:.75rem}.frame-entry-audio-error{color:var(--relic-error);margin-top:.5rem;font-size:.8rem}.frame-transcript{border:1px solid var(--relic-border);background:var(--relic-parchment);border-radius:6px;margin-bottom:.75rem;padding:.625rem .75rem}.frame-transcript-row{align-items:center;gap:.5rem;display:flex}.frame-transcript-label{color:var(--relic-text);flex-shrink:0;font-size:.85rem;font-weight:600}.frame-transcript-status{flex:1;font-size:.8rem}.frame-transcript-status.present{color:var(--relic-success)}.frame-transcript-status.absent{color:var(--relic-text-muted)}.frame-transcript-upload-btn{border:1px solid var(--relic-border);background:var(--relic-parchment-light);cursor:pointer;color:var(--relic-text);border-radius:4px;flex-shrink:0;padding:.375rem .625rem;font-size:.85rem}.frame-transcript-upload-btn:hover:not(:disabled){background:var(--relic-parchment-dark)}.frame-transcript-upload-btn:disabled{opacity:.5;cursor:not-allowed}.frame-transcript-help{color:var(--relic-text-muted);margin:.5rem 0 0;font-size:.75rem}.frame-transcript-error{color:var(--relic-error);margin-top:.5rem;font-size:.8rem}.custom-task-editor{max-width:720px;padding:12px 4px}.custom-task-editor h4{margin:0 0 4px}.custom-task-editor h5{margin:0 0 4px;font-size:.95rem}.custom-task-hint{color:#666;margin:0 0 12px;font-size:.85rem}.custom-task-hint code{background:#f0f0f0;border-radius:3px;padding:1px 4px}.custom-task-section{border-bottom:1px solid #eee;margin-bottom:20px;padding-bottom:12px}.custom-task-items,.custom-task-section{flex-direction:column;gap:10px;display:flex}.custom-task-pair,.custom-task-category,.custom-task-tile{background:#fafafa;border:1px solid #e2e2e2;border-radius:6px;align-items:flex-start;gap:10px;padding:10px;display:flex}.custom-task-pair-num{color:#888;flex:none;min-width:20px;padding-top:22px;font-weight:600}.custom-task-field{color:#444;flex-direction:column;flex:auto;gap:3px;font-size:.8rem;display:flex}.custom-task-field textarea,.custom-task-field input,.custom-task-field select{font:inherit;box-sizing:border-box;border:1px solid #ccc;border-radius:4px;width:100%;padding:6px 8px}.custom-task-field textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}.custom-task-category .custom-task-field,.custom-task-tile .custom-task-field{max-width:320px}.custom-task-remove{color:#c33;cursor:pointer;background:#fff;border:1px solid #d99;border-radius:4px;flex:none;align-self:center;width:28px;height:28px;font-size:1.1rem;line-height:1}.custom-task-remove:disabled{opacity:.4;cursor:not-allowed}.custom-task-add{cursor:pointer;background:#fff;border:1px dashed #999;border-radius:4px;align-self:flex-start;margin-top:8px;padding:6px 12px}.custom-task-add:hover{background:#f5f5f5}.custom-task-messages{border:1px solid #e2e2e2;border-radius:6px;flex-direction:column;gap:8px;margin-top:20px;padding:12px;display:flex}.custom-task-messages legend{padding:0 6px;font-weight:600}.activity-edit-page{flex-direction:column;height:100%;min-height:calc(100vh - 50px);display:flex}.edit-page-error{text-align:center;color:var(--relic-error);padding:2rem}.edit-header{background:var(--relic-parchment-light);border-bottom:1px solid var(--relic-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.5rem;display:flex}.edit-title{align-items:center;gap:.75rem;display:flex}.back-btn{border:1px solid var(--relic-border);background:var(--relic-parchment);width:2rem;height:2rem;color:var(--relic-text-muted);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:flex}.back-btn:hover{background:var(--relic-parchment-dark);color:var(--relic-text)}.edit-title-text{flex-direction:column;line-height:1.2;display:flex}.edit-lesson-name{color:var(--relic-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;font-weight:600}.edit-title h1{font-size:1.125rem;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.edit-tabs{gap:.25rem;display:flex}.edit-tabs button{border:1px solid var(--relic-border);background:var(--relic-parchment);color:var(--relic-text-muted);cursor:pointer;border-radius:4px 4px 0 0;padding:.5rem 1rem;font-size:.875rem;transition:all .15s}.edit-tabs button:hover{background:var(--relic-parchment-dark)}.edit-tabs button.active{background:var(--relic-parchment-light);border-bottom-color:var(--relic-parchment-light);color:var(--relic-accent);font-weight:600}.edit-actions{align-items:center;gap:.75rem;display:flex}.dirty-indicator{color:var(--relic-warning);font-size:.875rem}.draft-indicator{color:var(--relic-accent);font-size:.875rem}.edit-actions button{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;transition:all .15s}.edit-actions button:hover:not(:disabled){background:var(--relic-parchment-dark)}.edit-actions button:disabled{opacity:.5;cursor:not-allowed}.edit-actions .publish-btn{background:var(--relic-success);color:#fff;border-color:var(--relic-success)}.edit-actions .publish-btn:hover:not(:disabled){background:#4a6830}.edit-actions .publish-btn:disabled{background:var(--relic-parchment-dark);color:var(--relic-text-muted);border-color:var(--relic-border)}.edit-body{flex-direction:column;flex:1;padding:1rem;display:flex;overflow:hidden}.edit-loading,.edit-error{text-align:center;color:var(--relic-text-muted);padding:2rem}.edit-error{color:var(--relic-error)}.edit-layout{flex:1;gap:1rem;min-height:0;display:flex}.frame-selector{border:1px solid var(--relic-border);background:var(--relic-parchment-light);border-radius:4px;flex-shrink:0;width:200px;overflow-y:auto}.frame-selector h4{background:var(--relic-parchment-dark);font-size:.875rem;font-family:var(--relic-font-heading);border-bottom:1px solid var(--relic-border);color:var(--relic-text);margin:0;padding:.75rem}.frame-item{border-bottom:1px solid var(--relic-parchment-dark);align-items:stretch;display:flex}.frame-btn{text-align:left;cursor:pointer;color:var(--relic-text);background:0 0;border:none;border-left:3px solid #0000;flex:1;justify-content:space-between;align-items:center;padding:.625rem .75rem;font-size:.875rem;transition:all .15s;display:flex}.frame-btn:hover{background:var(--relic-parchment-dark)}.frame-btn.selected{background:var(--relic-parchment-dark);border-left-color:var(--relic-accent);color:var(--relic-accent)}.frame-btn .task-count{color:var(--relic-text-muted);background:var(--relic-parchment);border-radius:10px;padding:2px 6px;font-size:.7rem}.frame-actions{border-left:1px solid var(--relic-parchment-dark);flex-direction:column;display:flex}.reorder-btn,.remove-btn{cursor:pointer;color:var(--relic-text-muted);background:0 0;border:none;flex:1;justify-content:center;align-items:center;padding:.25rem .5rem;font-size:.625rem;transition:all .15s;display:flex}.reorder-btn:hover:not(:disabled){background:var(--relic-parchment-dark);color:var(--relic-accent)}.remove-btn{font-size:.875rem;font-weight:700}.remove-btn:hover:not(:disabled){color:var(--relic-error);background:#8a3f3f1a}.reorder-btn:disabled,.remove-btn:disabled{opacity:.3;cursor:not-allowed}.add-frame-btn{border:2px dashed var(--relic-border);cursor:pointer;width:calc(100% - 1rem);color:var(--relic-text-muted);background:0 0;border-radius:4px;margin:.5rem;padding:.75rem;font-size:.875rem;transition:all .15s}.add-frame-btn:hover{border-color:var(--relic-accent);color:var(--relic-accent);background:#c9a2270d}.main-editor{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.frame-editor-container{border:1px solid var(--relic-border);background:#fff;border-radius:4px;flex:1;overflow-y:auto}.preview-container{border:1px solid var(--relic-border);background:#fff;border-radius:4px;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.preview-iframe{background:#fff;border:none;flex:1;width:100%;height:100%}.raw-editor-container{border:1px solid var(--relic-border);background:var(--relic-parchment-light);border-radius:4px;flex-direction:column;flex:1;display:flex;overflow:hidden}.raw-html-editor{resize:none;background:var(--relic-parchment-light);width:100%;color:var(--relic-text);box-sizing:border-box;border:none;flex:1;padding:1rem;font-family:Consolas,Monaco,Courier New,monospace;font-size:.875rem;line-height:1.5}.raw-html-editor:focus{outline:none;box-shadow:inset 0 0 0 2px #c9a2274d}.no-content,.no-selection{height:100%;color:var(--relic-text-muted);justify-content:center;align-items:center;display:flex}.tasks-editor{flex:1;gap:1rem;min-height:0;display:flex}.task-selector{border:1px solid var(--relic-border);background:var(--relic-parchment-light);border-radius:4px;flex-shrink:0;width:220px;overflow-y:auto}.task-selector h4{background:var(--relic-parchment-dark);font-size:.875rem;font-family:var(--relic-font-heading);border-bottom:1px solid var(--relic-border);color:var(--relic-text);margin:0;padding:.75rem}.stack-group{border-bottom:1px solid var(--relic-parchment-dark)}.stack-label{color:var(--relic-text-muted);background:var(--relic-parchment);padding:.375rem .75rem;font-size:.75rem;font-weight:500}.stack-label-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.stack-edit-btn{border:1px solid var(--relic-parchment-dark);cursor:pointer;color:var(--relic-text);background:#fff;border-radius:3px;padding:.125rem .5rem;font-size:.7rem}.stack-edit-btn:hover{background:var(--relic-parchment-dark)}.task-item{align-items:stretch;display:flex}.task-btn{text-align:left;cursor:pointer;width:100%;color:var(--relic-text);background:0 0;border:none;border-left:3px solid #0000;flex:1;padding:.5rem .75rem;font-family:monospace;font-size:.8rem;transition:all .15s;display:block}.task-btn:hover{background:var(--relic-parchment-dark)}.task-btn.selected{background:var(--relic-parchment-dark);border-left-color:var(--relic-accent)}.task-btn.question{color:var(--relic-success)}.task-btn.custom{color:var(--relic-text-muted)}.remove-task-btn{cursor:pointer;color:var(--relic-text-muted);border:none;border-left:1px solid var(--relic-parchment-dark);background:0 0;padding:0 .5rem;font-size:.875rem;font-weight:700;transition:all .15s}.remove-task-btn:hover{color:var(--relic-error);background:#8a3f3f1a}.task-content{border:1px solid var(--relic-border);background:#fff;border-radius:4px;flex:1;overflow-y:auto}.custom-task-info{color:var(--relic-text-muted);padding:1rem}.add-frame-modal{z-index:1200;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.add-frame-content{background:var(--relic-parchment-light);border-radius:8px;width:90%;max-width:400px;padding:1.5rem;box-shadow:0 4px 20px #2d1f144d}.add-frame-content h4{font-family:var(--relic-font-heading);color:var(--relic-text);margin:0 0 .5rem}.add-frame-content p{color:var(--relic-text-muted);margin:0 0 1rem}.template-list{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.template-btn{border:1px solid var(--relic-border);background:var(--relic-parchment);cursor:pointer;text-align:left;border-radius:4px;flex-direction:column;align-items:flex-start;padding:.75rem 1rem;transition:all .15s;display:flex}.template-btn:hover{border-color:var(--relic-accent);background:#c9a2270d}.template-btn strong{color:var(--relic-text);font-size:.9rem}.template-btn span{color:var(--relic-text-muted);margin-top:.25rem;font-size:.8rem}.cancel-btn{border:1px solid var(--relic-border);background:var(--relic-parchment);color:var(--relic-text);cursor:pointer;border-radius:4px;padding:.5rem 1rem;transition:all .15s}.cancel-btn:hover{background:var(--relic-parchment-dark)}.add-task-btn{border:2px dashed var(--relic-border);cursor:pointer;width:calc(100% - 1rem);color:var(--relic-text-muted);background:0 0;border-radius:4px;margin:.5rem;padding:.75rem;font-size:.875rem;transition:all .15s}.add-task-btn:hover{border-color:var(--relic-accent);color:var(--relic-accent);background:#c9a2270d}.add-task-modal{z-index:1200;background:#2d1f1499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.add-task-content{background:var(--relic-parchment-light);border-radius:8px;width:90%;max-width:400px;padding:1.5rem;box-shadow:0 4px 20px #2d1f144d}.add-task-content h4{font-family:var(--relic-font-heading);color:var(--relic-text);margin:0 0 .5rem}.add-task-content p{color:var(--relic-text-muted);margin:0 0 1rem}.journal-editor-page{flex-direction:column;height:100%;min-height:calc(100vh - 50px);display:flex}.journal-editor-page .edit-body{flex:1;padding:1.5rem;overflow-y:auto}.journal-form{flex-direction:column;gap:1.25rem;max-width:720px;margin:0 auto;display:flex}.journal-form .form-row{flex-direction:column;gap:.375rem;display:flex}.journal-form label{color:var(--relic-text);font-size:.875rem;font-weight:600}.journal-form .required{color:var(--relic-error)}.journal-form input[type=text],.journal-form input[type=number],.journal-textarea{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;padding:.5rem .625rem;font-family:inherit;font-size:.9rem}.journal-textarea{resize:vertical;line-height:1.4}.journal-form .field-hint{color:var(--relic-text-muted);font-size:.75rem}.journal-rich-field{border:1px solid var(--relic-border);background:var(--relic-parchment-light);border-radius:4px;min-height:5.5rem;padding:.5rem .625rem}.journal-form .form-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}@media (max-width:640px){.journal-form .form-grid{grid-template-columns:1fr}}.upload-content-editor-page{flex-direction:column;height:100%;min-height:calc(100vh - 50px);display:flex}.upload-content-editor-page .edit-body{flex:1;padding:1.5rem;overflow-y:auto}.uc-form{flex-direction:column;gap:2rem;max-width:820px;margin:0 auto;display:flex}.uc-section h3{font-family:var(--relic-font-heading);color:var(--relic-text);margin:0 0 .75rem;font-size:1rem}.uc-section-head{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.uc-add-actions{gap:.5rem;display:flex}.uc-form .form-grid{grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem;display:grid}.uc-form .form-row{flex-direction:column;gap:.375rem;display:flex}.uc-form label{color:var(--relic-text);font-size:.8125rem;font-weight:600}.uc-form input[type=text],.uc-form input[type=number]{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;padding:.5rem .625rem;font-family:inherit;font-size:.9rem}.uc-form .field-hint{color:var(--relic-text-muted);font-size:.75rem}.uc-upload-note{border-left:3px solid var(--relic-accent);background:var(--relic-parchment-dark,#f0ead9);color:var(--relic-text-muted);border-radius:0 4px 4px 0;margin:0 0 .875rem;padding:.5rem .75rem;font-size:.75rem;line-height:1.4}.uc-empty{color:var(--relic-text-muted);font-style:italic}.uc-resource-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.uc-resource{border:1px solid var(--relic-border);background:var(--relic-parchment-light);border-radius:6px;padding:.875rem}.uc-resource-unknown{background:var(--relic-parchment-dark,#f0ead9);border-style:dashed}.uc-resource-edit{align-items:flex-start;gap:.75rem;display:flex}.uc-resource-fields{flex-direction:column;flex:1;gap:.625rem;display:flex}.uc-file-row{align-items:center;gap:.5rem;display:flex}.uc-file-name{color:var(--relic-text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-family:monospace;font-size:.8125rem;overflow:hidden}.uc-checkbox{flex-direction:row;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:400;display:flex}.uc-remove-btn{border:1px solid var(--relic-border);background:var(--relic-parchment);color:var(--relic-error);cursor:pointer;border-radius:4px;padding:.375rem .625rem}.uc-remove-btn:hover{background:var(--relic-parchment-dark)}.uc-resource-name{color:var(--relic-text);font-weight:600}.uc-resource-path{color:var(--relic-text-muted);word-break:break-all;margin:.25rem 0;font-family:monospace;font-size:.8125rem}.uc-flag-note{color:var(--relic-text-muted);margin-bottom:.5rem;font-size:.75rem}.course-sets-page{max-width:1200px;margin:0 auto;padding:1.5rem}.course-sets-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.course-sets-header h1{margin:0;font-size:1.5rem}.course-sets-filters{align-items:center;gap:1rem;display:flex}.course-sets-search{gap:.5rem;display:flex}.course-sets-search input{border:1px solid var(--relic-border);background:var(--relic-parchment-light);width:250px;color:var(--relic-text);border-radius:4px;padding:.5rem .75rem;font-size:.9rem}.course-sets-search input:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.course-sets-error{color:var(--relic-error);background:#f5e6e6;border:1px solid #d4b8b8;border-radius:4px;margin-bottom:1rem;padding:1rem}.course-sets-loading{text-align:center;color:var(--relic-text-muted);padding:3rem}.course-sets-table{border-collapse:collapse;background:var(--relic-parchment-light);border-radius:8px;width:100%;overflow:hidden;box-shadow:0 1px 3px #3d29141a}.course-sets-table th{text-align:left;background:var(--relic-parchment-dark);color:var(--relic-text);border-bottom:1px solid var(--relic-border);padding:.75rem 1rem;font-size:.85rem;font-weight:600}.course-sets-table td{border-bottom:1px solid var(--relic-parchment-dark);padding:.75rem 1rem}.course-sets-row{transition:background .1s}.course-sets-row:hover{background:var(--relic-parchment-dark)}.status-badge{text-transform:uppercase;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.status-active{color:#155724;background:#d4edda}.status-inactive{color:#6c757d;background:#e2e3e5}.course-sets-pagination{justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.course-sets-pagination button{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.9rem}.course-sets-pagination button:hover:not(:disabled){background:var(--relic-parchment-dark)}.course-sets-pagination button:disabled{opacity:.5;cursor:not-allowed}.course-sets-pagination span{color:var(--relic-text-muted);font-size:.9rem}.bulk-actions{border:1px solid var(--relic-accent);background:#c9a2271a;border-radius:4px;align-items:center;gap:12px;margin-bottom:1rem;padding:12px 16px;display:flex}.bulk-actions .selection-count{color:var(--relic-text);font-weight:500}.bulk-actions .distribute-btn{background:var(--relic-success);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:8px 16px;font-size:14px}.bulk-actions .distribute-btn:hover{background:#4a6732}.bulk-actions .clear-selection-btn{background:var(--relic-parchment-light);color:var(--relic-text);border:1px solid var(--relic-border);cursor:pointer;border-radius:4px;margin-left:auto;padding:8px 16px;font-size:14px}.bulk-actions .clear-selection-btn:hover{background:var(--relic-parchment-dark)}.libraries-page{max-width:1200px;margin:0 auto;padding:1.5rem}.libraries-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.libraries-header h1{margin:0;font-size:1.5rem}.libraries-filters{align-items:center;gap:1rem;display:flex}.libraries-search{gap:.5rem;display:flex}.libraries-search input{border:1px solid var(--relic-border);background:var(--relic-parchment-light);width:250px;color:var(--relic-text);border-radius:4px;padding:.5rem .75rem;font-size:.9rem}.libraries-search input:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.libraries-error{color:var(--relic-error);background:#f5e6e6;border:1px solid #d4b8b8;border-radius:4px;margin-bottom:1rem;padding:1rem}.libraries-loading{text-align:center;color:var(--relic-text-muted);padding:3rem}.libraries-table{border-collapse:collapse;background:var(--relic-parchment-light);border-radius:8px;width:100%;overflow:hidden;box-shadow:0 1px 3px #3d29141a}.libraries-table th{text-align:left;background:var(--relic-parchment-dark);color:var(--relic-text);border-bottom:1px solid var(--relic-border);padding:.75rem 1rem;font-size:.85rem;font-weight:600}.libraries-table td{border-bottom:1px solid var(--relic-parchment-dark);padding:.75rem 1rem}.libraries-row{transition:background .1s}.libraries-row:hover{background:var(--relic-parchment-dark)}.library-id{color:var(--relic-text-muted);cursor:help;font-family:monospace;font-size:.8rem}.library-status{border-radius:4px;padding:.25rem .5rem;font-size:.8rem;font-weight:500;display:inline-block}.library-status.status-active{color:#1e7e34;background:#e6f4ea}.library-status.status-draft{color:#856404;background:#fff3cd}.library-status.status-archived{color:#6c757d;background:#f5f5f5}.libraries-pagination{justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.libraries-pagination button{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.9rem}.libraries-pagination button:hover:not(:disabled){background:var(--relic-parchment-dark)}.libraries-pagination button:disabled{opacity:.5;cursor:not-allowed}.libraries-pagination span{color:var(--relic-text-muted);font-size:.9rem}.history-page{max-width:1200px;margin:0 auto;padding:1.5rem}.history-header{flex-direction:column;gap:1rem;margin-bottom:1.5rem;display:flex}.history-header h1{margin:0;font-size:1.5rem}.history-filters{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}.history-filter-group{flex-direction:column;gap:.25rem;display:flex}.history-filter-group label{color:var(--relic-text-muted);font-size:.8rem;font-weight:500}.history-date-input{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;padding:.5rem .75rem;font-size:.9rem}.history-date-input:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.history-category-select{border:1px solid var(--relic-border);background:var(--relic-parchment-light);min-width:160px;color:var(--relic-text);border-radius:4px;padding:.5rem .75rem;font-size:.9rem}.history-category-select:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.history-username-input{border:1px solid var(--relic-border);background:var(--relic-parchment-light);width:200px;color:var(--relic-text);border-radius:4px;padding:.5rem .75rem;font-size:.9rem}.history-username-input:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.history-error{color:var(--relic-error);background:#f5e6e6;border:1px solid #d4b8b8;border-radius:4px;margin-bottom:1rem;padding:1rem}.history-loading{text-align:center;color:var(--relic-text-muted);padding:3rem}.history-table{border-collapse:collapse;background:var(--relic-parchment-light);border-radius:8px;width:100%;overflow:hidden;box-shadow:0 1px 3px #3d29141a}.history-table th{text-align:left;background:var(--relic-parchment-dark);color:var(--relic-text);border-bottom:1px solid var(--relic-border);padding:.75rem 1rem;font-size:.85rem;font-weight:600}.history-table td{border-bottom:1px solid var(--relic-parchment-dark);padding:.75rem 1rem}.history-row{cursor:pointer;transition:background .1s}.history-row:hover,.history-row.expanded{background:var(--relic-parchment-dark)}.history-status-cell{text-align:center}.history-status-success{color:#2e7d32;font-size:1.1rem;font-weight:700}.history-status-failure{color:#c62828;font-size:1.1rem;font-weight:700}.history-details-row{background:var(--relic-parchment-dark)}.history-details-row td{padding:0}.history-details{border-top:1px solid var(--relic-border);background:#00000005;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;padding:1rem 1.5rem;display:grid}.history-detail-item{gap:.5rem;display:flex}.history-detail-label{color:var(--relic-text-muted);font-size:.85rem;font-weight:600}.history-detail-value{color:var(--relic-text);word-break:break-all;font-family:monospace;font-size:.85rem}.no-results{text-align:center;color:var(--relic-text-muted);padding:2rem!important}.history-pagination{justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.history-pagination button{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.9rem}.history-pagination button:hover:not(:disabled){background:var(--relic-parchment-dark)}.history-pagination button:disabled{opacity:.5;cursor:not-allowed}.history-pagination span{color:var(--relic-text-muted);font-size:.9rem}.question-bank-page{flex-direction:column;max-width:1400px;height:100%;margin:0 auto;padding:1.5rem;display:flex}.qb-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.qb-title{align-items:center;gap:.75rem;display:flex}.qb-title h1{margin:0;font-size:1.5rem}.qb-bank-key{color:var(--relic-text-muted);background:var(--relic-parchment-dark);cursor:help;border-radius:4px;padding:.2rem .5rem;font-family:monospace;font-size:.8rem}.qb-back-btn{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);cursor:pointer;border-radius:4px;padding:.4rem .6rem}.qb-back-btn:hover{background:var(--relic-parchment-dark)}.qb-actions{align-items:center;gap:.75rem;display:flex}.qb-actions button{border:1px solid var(--relic-border);background:var(--relic-accent);color:#fff;cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.9rem}.qb-actions button:disabled{opacity:.5;cursor:not-allowed}.qb-dirty{color:var(--relic-text-muted);font-size:.85rem;font-style:italic}.qb-invalid-warning{color:var(--relic-error);font-size:.85rem;font-weight:600}.qb-error{color:var(--relic-error);background:#f5e6e6;border:1px solid #d4b8b8;border-radius:4px;margin-bottom:1rem;padding:1rem}.qb-loading{text-align:center;color:var(--relic-text-muted);padding:3rem}.qb-layout{flex:1;grid-template-columns:320px 1fr;gap:1rem;min-height:0;display:grid}.qb-list{background:var(--relic-parchment-light);border:1px solid var(--relic-border);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.qb-list-header{background:var(--relic-parchment-dark);border-bottom:1px solid var(--relic-border);padding:.75rem 1rem}.qb-list-header h4{margin:0;font-size:.9rem}.qb-question-list{flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.qb-list-item{border-bottom:1px solid var(--relic-parchment-dark);align-items:stretch;display:flex}.qb-question-btn{text-align:left;cursor:pointer;color:var(--relic-text);background:0 0;border:none;flex-direction:column;flex:1;gap:.2rem;padding:.6rem .75rem;display:flex}.qb-question-btn:hover{background:var(--relic-parchment-dark)}.qb-question-btn.selected{border-left:3px solid var(--relic-accent);background:#c9a22726}.qb-q-type{text-transform:uppercase;color:var(--relic-text-muted);font-family:monospace;font-size:.7rem}.qb-q-type-unset{color:var(--relic-accent);opacity:.55}.qb-q-label{flex-direction:column;gap:.1rem;font-size:.85rem;line-height:1.3;display:flex}.qb-q-num{font-weight:600}.qb-q-id{color:var(--relic-text-muted);word-break:break-all;font-family:monospace;font-size:.7rem}.qb-q-source{border-radius:3px;align-self:flex-start;padding:.1rem .4rem;font-size:.7rem;font-weight:600}.qb-q-source.edgenuity{color:#1e7e34;background:#e6f4ea}.qb-q-source.learnosity{color:#6c757d;background:#f5f5f5}.qb-remove-btn{color:var(--relic-text-muted);cursor:pointer;background:0 0;border:none;padding:0 .6rem;font-size:1.1rem}.qb-remove-btn:hover:not(:disabled){color:var(--relic-error)}.qb-remove-btn:disabled{opacity:.3;cursor:not-allowed}.qb-empty{text-align:center;color:var(--relic-text-muted);padding:1.5rem;font-size:.85rem}.qb-add{border-top:1px solid var(--relic-border);background:var(--relic-parchment-dark);gap:.5rem;padding:.75rem;display:flex}.qb-add select{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;padding:.4rem}.qb-add-btn{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);cursor:pointer;border-radius:4px;flex:1;padding:.4rem .75rem}.qb-add-btn:hover{background:var(--relic-parchment-light);border-color:var(--relic-accent)}.qb-detail{background:var(--relic-parchment-light);border:1px solid var(--relic-border);border-radius:8px;flex-direction:column;padding:1rem;display:flex;overflow-y:auto}.qb-no-selection{color:var(--relic-text-muted);margin:auto}.qb-detail-toolbar{justify-content:flex-end;min-height:1.75rem;margin-bottom:.75rem;display:flex}.qb-save-question-btn{border:1px solid var(--relic-accent);color:var(--relic-accent);cursor:pointer;background:0 0;border-radius:4px;padding:.4rem .9rem;font-size:.85rem;font-weight:600}.qb-save-question-btn:hover:not(:disabled){background:#c9a2271f}.qb-save-question-btn:disabled{opacity:.5;cursor:not-allowed}.qb-question-editor{flex-direction:column;flex:1;gap:1rem;min-height:0;display:flex}.qb-readonly-banner{color:#856404;background:#fff3cd;border:1px solid #ffe69c;border-radius:4px;padding:.6rem .75rem;font-size:.85rem}.qb-field-row{flex-wrap:wrap;gap:1rem;display:flex}.qb-field{flex-direction:column;gap:.25rem;display:flex}.qb-field-grow{flex:1;min-width:200px}.qb-field-check{flex-direction:row;align-items:center;gap:.4rem}.qb-bank-settings{border:1px solid var(--relic-border);border-radius:6px;padding:.75rem 1rem 1rem}.qb-bank-settings legend{color:var(--relic-text-muted);padding:0 .4rem;font-size:.8rem;font-weight:600}.qb-bank-settings-hint{color:var(--relic-text-muted);margin:0;font-size:.85rem;font-style:italic}.qb-type-codes{flex-wrap:wrap;gap:.4rem 1rem;margin:.4rem 0 .75rem;display:flex}.qb-type-code{align-items:center;gap:.35rem;font-family:monospace;font-size:.85rem;display:flex}.qb-spiral{margin-top:.25rem}.qb-objectives{margin-top:.75rem}.qb-objective-list{flex-direction:column;gap:.35rem;margin-top:.4rem;display:flex}.qb-objective{align-items:flex-start;gap:.4rem;font-size:.85rem;line-height:1.4;display:flex}.qb-field-label{color:var(--relic-text-muted);font-size:.8rem;font-weight:600}.qb-field input,.qb-field textarea{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;padding:.5rem;font-size:.9rem}.qb-field input:disabled,.qb-field textarea:disabled{background:var(--relic-parchment-dark);color:var(--relic-text-muted);cursor:not-allowed}.qb-bxml-field{flex:1;min-height:0}.qb-bxml-readonly{background:var(--relic-surface-muted,#f5f5f5);border:1px solid var(--relic-border,#ddd);white-space:pre-wrap;word-break:break-word;min-height:300px;color:var(--relic-text-muted);border-radius:4px;flex:1;margin:0;padding:.75rem;font-family:monospace;font-size:.85rem;line-height:1.4;overflow:auto}.qbl-page{max-width:800px;margin:0 auto;padding:1.5rem}.qbl-header h1{margin:0 0 1rem;font-size:1.5rem}.qbl-help{color:var(--relic-text-muted);margin-bottom:1.5rem;font-size:.9rem}.qbl-form{gap:.5rem;display:flex}.qbl-form input{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;flex:1;padding:.5rem .75rem;font-size:.9rem}.qbl-form input:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.qbl-form button{border:1px solid var(--relic-border);background:var(--relic-accent);color:#fff;cursor:pointer;border-radius:4px;padding:.5rem 1.25rem}.qbl-form button:disabled{opacity:.5;cursor:not-allowed}.course-structure-editor{flex-direction:column;max-width:1100px;height:100%;margin:0 auto;padding:1.5rem;display:flex}.cse-header{z-index:30;background:var(--relic-parchment);margin-bottom:1rem;justify-content:space-between;align-items:center;margin-inline:-1.5rem;padding:.75rem 1.5rem;display:flex;position:sticky;top:0}.cse-title{align-items:center;gap:.75rem;display:flex}.cse-title h1{margin:0;font-size:1.5rem}.cse-title-icon{color:var(--relic-accent)}.cse-back-btn{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);cursor:pointer;border-radius:4px;padding:.4rem .6rem}.cse-back-btn:hover{background:var(--relic-parchment-dark)}.cse-actions{align-items:center;gap:.75rem;display:flex}.cse-dirty{color:var(--relic-warning);font-size:.85rem;font-style:italic}.cse-saved{color:var(--relic-success,#2e7d32);align-items:center;gap:.3rem;font-size:.85rem;display:inline-flex}.cse-save-btn{border:1px solid var(--relic-accent);background:var(--relic-accent);color:#fff;cursor:pointer;border-radius:4px;align-items:center;gap:.4rem;padding:.4rem .9rem;font-size:.85rem;display:inline-flex}.cse-save-btn:hover:not(:disabled){filter:brightness(.95)}.cse-save-btn:disabled{opacity:.5;cursor:default}.cse-error,.cse-drop-error{background:var(--relic-parchment-light);border:1px solid var(--relic-error);color:var(--relic-error);border-radius:4px;margin-bottom:.75rem;padding:.6rem .8rem;font-size:.9rem}.cse-loading,.cse-empty{color:var(--relic-text-muted);padding:1rem}.cse-tree{border:1px solid var(--relic-border);background:var(--relic-parchment-light);border-radius:6px;padding:.4rem;overflow:auto}.cse-row{background:var(--relic-parchment-light);border:1px solid #0000;border-radius:4px;align-items:center;gap:.5rem;padding:.35rem .5rem;font-size:.9rem;display:flex}.cse-row:hover{background:var(--relic-parchment);border-color:var(--relic-border)}.cse-row.is-container{font-weight:600}.cse-drag-handle{color:var(--relic-text-muted);cursor:grab;touch-action:none;background:0 0;border:none;padding:.1rem .3rem}.cse-drag-handle:active{cursor:grabbing}.cse-collapse-btn{color:var(--relic-text-muted);cursor:pointer;background:0 0;border:none;width:1.2rem;padding:0}.cse-collapse-spacer{width:1.2rem;display:inline-block}.cse-row-name{color:var(--relic-text);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.cse-row-type{color:var(--relic-text-muted);background:var(--relic-parchment-dark);border-radius:3px;padding:.1rem .4rem;font-family:monospace;font-size:.7rem}.cse-row-count{color:var(--relic-text-muted);text-align:center;min-width:1.2rem;font-size:.7rem}.cse-row-overlay{border-color:var(--relic-accent);background:var(--relic-parchment);cursor:grabbing;box-shadow:0 4px 12px #0000002e}.cse-insert-target{color:var(--relic-text-muted);font-size:.8rem}.cse-insert-btn{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);cursor:pointer;border-radius:4px;align-items:center;gap:.4rem;padding:.4rem .7rem;font-size:.85rem;display:inline-flex}.cse-insert-btn:hover:not(:disabled){background:var(--relic-parchment-dark)}.cse-insert-btn:disabled{opacity:.5;cursor:default}.cse-body{align-items:flex-start;gap:1rem;min-height:0;display:flex}.cse-body .cse-tree{flex:1}.cse-row.is-selected{border-color:var(--relic-accent);background:var(--relic-parchment)}button.cse-row-name{text-align:left;color:var(--relic-text);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;font:inherit;background:0 0;border:none;flex:1;padding:0;overflow:hidden}.cse-row-action{color:var(--relic-text-muted);cursor:pointer;opacity:.6;background:0 0;border:none;padding:.1rem .3rem}.cse-row:hover .cse-row-action{opacity:1}.cse-row-action:hover{color:var(--relic-accent)}.cse-row-action-danger:hover{color:var(--relic-error)}.cse-meta-panel{border:1px solid var(--relic-border);background:var(--relic-parchment-light);z-index:10;border-radius:6px;align-self:flex-start;width:320px;padding:.8rem 1rem;position:sticky;top:4.5rem}.cse-meta-header{justify-content:space-between;align-items:center;margin-bottom:.6rem;display:flex}.cse-meta-header h3{margin:0;font-size:1rem}.cse-meta-type{color:var(--relic-text-muted);background:var(--relic-parchment-dark);border-radius:3px;margin-left:.4rem;padding:.1rem .4rem;font-family:monospace;font-size:.7rem}.cse-meta-form{flex-direction:column;gap:.7rem;display:flex}.cse-meta-field{flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.cse-meta-field input,.cse-meta-field textarea{border:1px solid var(--relic-border);font:inherit;background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;padding:.4rem .5rem}.cse-meta-actions{justify-content:flex-end;gap:.5rem;margin-top:.3rem;display:flex}.cse-btn-primary,.cse-btn-secondary{border:1px solid var(--relic-border);cursor:pointer;border-radius:4px;padding:.4rem .8rem;font-size:.85rem}.cse-btn-primary{background:var(--relic-accent);color:#fff;border-color:var(--relic-accent)}.cse-btn-secondary{background:var(--relic-parchment-light);color:var(--relic-text)}.cse-meta-content-edit{border-bottom:1px solid var(--relic-border);margin-bottom:.75rem;padding-bottom:.75rem}.cse-btn-edit-content{border:1px solid var(--relic-accent);cursor:pointer;background:var(--relic-accent);color:#fff;border-radius:4px;width:100%;padding:.5rem .8rem;font-size:.9rem}.cse-btn-edit-content:hover:not(:disabled){filter:brightness(1.08)}.cse-btn-edit-content:disabled{opacity:.6;cursor:not-allowed}.cse-modal-backdrop{z-index:100;background:#00000059;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.cse-modal{background:var(--relic-parchment-light);border:1px solid var(--relic-border);border-radius:8px;flex-direction:column;width:min(760px,92vw);max-height:80vh;padding:1rem 1.2rem;display:flex;overflow:hidden}.cse-modal-header{justify-content:space-between;align-items:center;margin-bottom:.6rem;display:flex}.cse-modal-header h2{margin:0;font-size:1.2rem}.cse-modal-close{color:var(--relic-text-muted);cursor:pointer;background:0 0;border:none;padding:.2rem .4rem;font-size:1rem}.cse-modal-close:hover{color:var(--relic-text)}.cse-modal-wide{width:min(960px,94vw)}.cse-mode-toggle{border:1px solid var(--relic-border);border-radius:6px;gap:.2rem;margin-left:auto;margin-right:.6rem;display:flex;overflow:hidden}.cse-mode-btn{background:var(--relic-parchment-light);color:var(--relic-text-muted);cursor:pointer;font:inherit;border:none;align-items:center;gap:.35rem;padding:.35rem .7rem;font-size:.85rem;display:flex}.cse-mode-btn:hover{background:var(--relic-parchment)}.cse-mode-btn.active{background:var(--relic-accent);color:#fff}.cse-picker{flex:1;gap:.8rem;min-height:0;display:flex}.cse-picker-courses,.cse-picker-activities{border:1px solid var(--relic-border);border-radius:6px;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.cse-picker-search{border-bottom:1px solid var(--relic-border);gap:.3rem;padding:.4rem;display:flex}.cse-picker-search input{border:1px solid var(--relic-border);font:inherit;border-radius:4px;flex:1;padding:.35rem .5rem}.cse-picker-search button{border:1px solid var(--relic-border);background:var(--relic-parchment-light);cursor:pointer;border-radius:4px;padding:0 .6rem}.cse-picker-list{margin:0;padding:.3rem;list-style:none;overflow:auto}.cse-picker-item{text-align:left;cursor:pointer;width:100%;font:inherit;color:var(--relic-text);background:0 0;border:1px solid #0000;border-radius:4px;justify-content:space-between;gap:.5rem;padding:.4rem .5rem;display:flex}.cse-picker-item:hover{background:var(--relic-parchment);border-color:var(--relic-border)}.cse-picker-item.selected{border-color:var(--relic-accent);background:var(--relic-parchment)}.cse-picker-item-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cse-picker-item-meta{color:var(--relic-text-muted);flex-shrink:0;font-size:.7rem}.cse-picker-loading,.cse-picker-hint,.cse-picker-empty{color:var(--relic-text-muted);padding:.8rem;font-size:.85rem}.cse-pick-tree{padding:.3rem;overflow:auto}.cse-pick-row{border:1px solid #0000;border-radius:4px;align-items:center;gap:.4rem;padding:.25rem .4rem;display:flex}.cse-pick-row:hover{background:var(--relic-parchment);border-color:var(--relic-border)}.cse-pick-row.is-container .cse-pick-name{font-weight:600}.cse-pick-collapse,.cse-pick-collapse-spacer{flex-shrink:0;width:1.1rem}.cse-pick-collapse{cursor:pointer;color:var(--relic-text-muted);background:0 0;border:none;padding:0;font-size:.75rem}.cse-pick-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.cse-pick-type{color:var(--relic-text-muted);flex-shrink:0;font-size:.7rem}.cse-pick-count{color:var(--relic-text-muted);background:var(--relic-parchment);border-radius:8px;flex-shrink:0;padding:0 .4rem;font-size:.7rem}.cse-pick-add{border:1px solid var(--relic-border);background:var(--relic-parchment-light);cursor:pointer;font:inherit;color:var(--relic-text);opacity:0;border-radius:4px;flex-shrink:0;padding:.15rem .5rem;font-size:.75rem}.cse-pick-row:hover .cse-pick-add{opacity:1}.cse-pick-add:hover{border-color:var(--relic-accent)}.cse-picker-list .cse-pick-row .cse-pick-add{opacity:1}.cse-pick-select{text-align:left;cursor:pointer;min-width:0;font:inherit;color:var(--relic-text);background:0 0;border:none;flex:1;align-items:center;gap:.5rem;padding:0;display:flex}.cse-pick-select:disabled{cursor:default}.cse-pick-check{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:#fff;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:1.05rem;height:1.05rem;font-size:.65rem;display:inline-flex}.cse-pick-check.checked{background:var(--relic-accent);border-color:var(--relic-accent)}.cse-pick-row.is-selected{background:var(--relic-parchment);border-color:var(--relic-accent)}.cse-pick-row.is-locked{opacity:.45}.cse-pick-row.is-locked .cse-pick-name{text-decoration:line-through}.cse-picker-footer{border-top:1px solid var(--relic-border);justify-content:space-between;align-items:center;gap:.75rem;margin-top:.6rem;padding-top:.6rem;display:flex}.cse-picker-tally{color:var(--relic-text-muted);font-size:.85rem}.cse-recent-pane{flex:1}.cse-recent-icon{color:var(--relic-accent);margin-right:.15rem}.cse-recent-section-label{text-transform:uppercase;letter-spacing:.04em;color:var(--relic-text-muted);padding:.5rem .6rem .2rem;font-size:.72rem;font-weight:600}.cse-pick-origin{color:var(--relic-text-muted);font-size:.8rem;font-weight:400}.cse-pick-retired{color:var(--relic-warning);font-size:.75rem;font-weight:600}.cse-create-menu{display:inline-flex;position:relative}.cse-create-backdrop{z-index:20;position:fixed;inset:0}.cse-create-dropdown{z-index:21;background:var(--relic-parchment-light);border:1px solid var(--relic-border);border-radius:6px;flex-direction:column;gap:.2rem;min-width:200px;padding:.3rem;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 14px #00000026}.cse-create-option{text-align:left;cursor:pointer;font:inherit;color:var(--relic-text);background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:.6rem;padding:.5rem .6rem;display:flex}.cse-create-option:hover:not(:disabled){background:var(--relic-parchment);border-color:var(--relic-border)}.cse-create-option:disabled{opacity:.5;cursor:default}.cse-create-option svg{color:var(--relic-accent);width:1.1rem}.cse-create-option span{flex-direction:column;display:flex}.cse-create-option small{color:var(--relic-text-muted);font-size:.72rem}.cse-jump-menu{display:inline-flex;position:relative}.cse-jump-backdrop{z-index:20;position:fixed;inset:0}.cse-jump-dropdown{z-index:21;background:var(--relic-parchment-light);border:1px solid var(--relic-border);border-radius:6px;flex-direction:column;gap:.1rem;min-width:240px;max-width:360px;max-height:60vh;padding:.3rem;display:flex;position:absolute;top:calc(100% + 4px);right:0;overflow:auto;box-shadow:0 4px 14px #00000026}.cse-jump-option{text-align:left;cursor:pointer;font:inherit;color:var(--relic-text);background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:.5rem;padding:.35rem .5rem;font-size:.85rem;display:flex}.cse-jump-option:hover{background:var(--relic-parchment);border-color:var(--relic-border)}.cse-jump-option-icon{color:var(--relic-accent);flex-shrink:0;font-size:.8rem}.cse-jump-option-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.cse-jump-option-type{color:var(--relic-text-muted);flex-shrink:0;font-family:monospace;font-size:.7rem}.course-options-page{max-width:900px;font-family:var(--relic-font-body);margin:0 auto;padding:1.5rem}.co-status{text-align:center;color:var(--relic-text-muted);padding:3rem}.co-status.co-error{color:var(--relic-error)}.co-header{align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.co-header h1{font-size:1.5rem;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.co-back-btn{background:var(--relic-parchment-light);border:1px solid var(--relic-border);cursor:pointer;width:2rem;height:2rem;color:var(--relic-text);border-radius:4px}.co-back-btn:hover{background:var(--relic-parchment-dark)}.co-title-icon{color:var(--relic-accent)}.co-error-banner{color:var(--relic-error);background:#f5e6e6;border:1px solid #d4b8b8;border-radius:4px;margin-bottom:1rem;padding:1rem}.co-fieldset-reset{border:none;min-width:0;margin:0;padding:0}.co-section{background:var(--relic-parchment-light);border:1px solid var(--relic-border);border-radius:8px;margin-bottom:1rem;padding:1.25rem;box-shadow:0 1px 3px #3d291414}.co-section h2{font-size:1rem;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0 0 1rem}.co-section-split{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.co-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.co-field{flex-direction:column;gap:.4rem;display:flex}.co-field>span{color:var(--relic-text);font-size:.85rem;font-weight:600}.co-field input,.co-field select{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;padding:.5rem .6rem;font-size:.9rem}.co-field select[multiple]{min-height:5rem}.co-field input:focus,.co-field select:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.co-num-grid{flex-wrap:wrap;gap:1rem;display:flex}.co-num-field{color:var(--relic-text);flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:600;display:flex}.co-num-field.inline{flex-direction:row;align-items:center;gap:.5rem;margin-top:.75rem;font-weight:600}.co-num-field input{border:1px solid var(--relic-border);background:var(--relic-parchment-light);width:5rem;color:var(--relic-text);border-radius:4px;padding:.4rem .5rem;font-size:.9rem}.co-check-grid{grid-template-columns:1fr 1fr;gap:.5rem 1rem;display:grid}.co-check{color:var(--relic-text);align-items:center;gap:.5rem;font-size:.875rem;display:flex}.co-check.indent{padding-left:1.5rem}.co-check input:disabled+*,.co-check input:disabled{cursor:not-allowed}.co-radio-row{flex-wrap:wrap;gap:1.5rem;display:flex}.co-radio{color:var(--relic-text);align-items:center;gap:.4rem;font-size:.875rem;display:flex}.co-note{color:var(--relic-text-muted);margin:.75rem 0 0;font-size:.8rem;font-style:italic}.co-hint{color:var(--relic-text-muted);font-size:.8rem}.co-weight-total{margin:.75rem 0 0;font-size:.9rem;font-weight:600}.co-weight-total.ok{color:var(--relic-success)}.co-weight-total.bad{color:var(--relic-error)}.co-field-error,.co-section-error{color:var(--relic-error);font-size:.8rem;font-weight:600}.co-section-error{margin:0 0 .75rem}.co-actions{background:linear-gradient(to top, var(--relic-parchment) 70%, transparent);justify-content:flex-end;align-items:center;gap:.75rem;padding:1rem 0;display:flex;position:sticky;bottom:0}.co-saved-pill{color:var(--relic-success);margin-right:auto;font-size:.9rem;font-weight:600}.co-cancel-btn{background:var(--relic-parchment-light);color:var(--relic-text);border:1px solid var(--relic-border);cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.9rem}.co-cancel-btn:hover:not(:disabled){background:var(--relic-parchment-dark)}.co-save-btn{background:var(--relic-nav-bg);color:var(--relic-parchment);cursor:pointer;border:none;border-radius:4px;padding:.5rem 1.25rem;font-size:.9rem;font-weight:600}.co-save-btn:hover:not(:disabled){background:var(--relic-text)}.co-save-btn:disabled,.co-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.import-course-page{max-width:1200px;font-family:var(--relic-font-body);margin:0 auto;padding:1.5rem}.ic-header{align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.ic-header h1{font-size:1.5rem;font-family:var(--relic-font-heading);color:var(--relic-text);margin:0}.ic-back-btn{background:var(--relic-parchment-light);border:1px solid var(--relic-border);cursor:pointer;width:2rem;height:2rem;color:var(--relic-text);border-radius:4px}.ic-back-btn:hover{background:var(--relic-parchment-dark)}.ic-title-icon{color:var(--relic-accent)}.ic-search{background:var(--relic-parchment-light);border:1px solid var(--relic-border);border-radius:8px;flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;padding:1rem;display:flex}.ic-field{flex-direction:column;gap:.4rem;display:flex}.ic-field>span{color:var(--relic-text);font-size:.85rem;font-weight:600}.ic-field input,.ic-field select{border:1px solid var(--relic-border);background:var(--relic-parchment-light);color:var(--relic-text);border-radius:4px;min-width:180px;padding:.5rem .75rem;font-size:.9rem}.ic-field input:focus,.ic-field select:focus{border-color:var(--relic-accent);outline:none;box-shadow:0 0 0 2px #c9a22733}.ic-search-btn{background:var(--relic-accent);color:var(--relic-nav-bg);cursor:pointer;border:none;border-radius:4px;padding:.5rem 1.25rem;font-size:.9rem;font-weight:600}.ic-search-btn:hover:not(:disabled){filter:brightness(1.05)}.ic-search-btn:disabled{opacity:.5;cursor:not-allowed}.ic-loading,.ic-empty{text-align:center;color:var(--relic-text-muted);padding:3rem}.ic-error{color:var(--relic-error);background:#f5e6e6;border:1px solid #d4b8b8;border-radius:4px;margin-bottom:1rem;padding:1rem}.ic-table{border-collapse:collapse;width:100%;font-size:.875rem}.ic-table th,.ic-table td{text-align:left;border-bottom:1px solid var(--relic-border);color:var(--relic-text);padding:.6rem .75rem}.ic-table th{font-family:var(--relic-font-heading);background:var(--relic-parchment-light);font-weight:600}.ic-table .ic-num{text-align:right;width:5rem}.ic-table tbody tr:hover{background:var(--relic-parchment-dark)}.ic-import-btn{background:var(--relic-nav-bg);color:var(--relic-parchment);cursor:pointer;white-space:nowrap;border:none;border-radius:4px;padding:.4rem .9rem;font-size:.85rem;font-weight:600}.ic-import-btn:hover:not(:disabled){background:var(--relic-text)}.ic-import-btn:disabled{opacity:.5;cursor:not-allowed}:root{--relic-nav-bg:#2d1f14;--relic-nav-text:#d4c4a8;--relic-nav-hover:#e8dcc6;--relic-accent:#c9a227;--relic-accent-hover:#dbb42f;--relic-parchment:#f5ead6;--relic-parchment-light:#faf6ed;--relic-parchment-dark:#e8dcc6;--relic-text:#3d2914;--relic-text-muted:#6b5344;--relic-border:#d4c4a8;--relic-success:#5d7a3a;--relic-warning:#b8860b;--relic-error:#8b3a3a;--relic-font-heading:"Merriweather", Georgia, serif;--relic-font-body:"Source Sans Pro", -apple-system, BlinkMacSystemFont, sans-serif;--relic-sidebar-width:240px;--relic-sidebar-collapsed:60px}*{box-sizing:border-box}body{font-family:var(--relic-font-body);background:var(--relic-parchment);color:var(--relic-text);margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--relic-font-heading);color:var(--relic-text)}.no-course{text-align:center;color:var(--relic-text-muted);padding:60px 20px}