*,:before,:after{box-sizing:border-box}body{color:#222;background:#f2f5f9;margin:0;font-family:system-ui,Segoe UI,Roboto,sans-serif;font-size:15px}#app{min-height:100vh}h1,h2,h3,p{margin:0}input,select,textarea,button{font-family:inherit}.login-wrapper[data-v-7d8897d5]{background:linear-gradient(135deg,#036 0%,#0055a5 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card[data-v-7d8897d5]{background:#fff;border-radius:12px;width:100%;max-width:420px;padding:2.5rem 2rem;box-shadow:0 8px 32px #0003}.logo-area[data-v-7d8897d5]{text-align:center;margin-bottom:2rem}.logo[data-v-7d8897d5]{height:64px;margin-bottom:.5rem}.logo-area h1[data-v-7d8897d5]{color:#036;margin:0 0 .25rem;font-size:1.4rem;font-weight:700}.subtitle[data-v-7d8897d5]{color:#666;margin:0;font-size:.82rem}.login-form[data-v-7d8897d5]{flex-direction:column;gap:1.1rem;display:flex}.field[data-v-7d8897d5]{flex-direction:column;gap:.35rem;display:flex}.field label[data-v-7d8897d5]{color:#333;font-size:.85rem;font-weight:600}.field input[data-v-7d8897d5]{border:1.5px solid #ccc;border-radius:7px;outline:none;padding:.65rem .9rem;font-size:.95rem;transition:border-color .2s}.field input[data-v-7d8897d5]:focus{border-color:#0055a5}.error-msg[data-v-7d8897d5]{color:#c0392b;text-align:center;margin:0;font-size:.85rem}.btn-login[data-v-7d8897d5]{color:#fff;cursor:pointer;background:#036;border:none;border-radius:7px;margin-top:.4rem;padding:.75rem;font-size:1rem;font-weight:600;transition:background .2s}.btn-login[data-v-7d8897d5]:hover{background:#0055a5}.demo-hint[data-v-7d8897d5]{color:#888;text-align:center;flex-direction:column;gap:.3rem;margin-top:1.4rem;font-size:.78rem;display:flex}.demo-hint code[data-v-7d8897d5]{color:#036;background:#f0f4f8;border-radius:4px;padding:1px 5px}.page-wrapper[data-v-11d43f9a]{background:#f2f5f9;min-height:100vh}.navbar[data-v-11d43f9a]{color:#fff;background:#036;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 2rem;display:flex}.brand-text[data-v-11d43f9a]{white-space:nowrap;font-size:1.05rem;font-weight:700}.nav-links[data-v-11d43f9a]{flex:1;gap:.25rem;padding:0 1rem;display:flex}.nav-link[data-v-11d43f9a]{color:#ffffffbf;border-radius:5px;padding:.35rem .9rem;font-size:.88rem;text-decoration:none;transition:background .15s,color .15s}.nav-link[data-v-11d43f9a]:hover,.nav-link.router-link-active[data-v-11d43f9a]{color:#fff;background:#ffffff26}.nav-right[data-v-11d43f9a]{align-items:center;gap:1rem;display:flex}.nav-user[data-v-11d43f9a]{opacity:.85;white-space:nowrap;font-size:.85rem}.btn-logout[data-v-11d43f9a]{color:#fff;cursor:pointer;background:0 0;border:1.5px solid #ffffff8c;border-radius:5px;padding:.3rem .85rem;font-size:.82rem}.btn-logout[data-v-11d43f9a]:hover{background:#ffffff21}.tab-bar[data-v-11d43f9a]{background:#fff;border-bottom:2px solid #e8edf4;padding:0 2rem;display:flex}.tab-btn[data-v-11d43f9a]{color:#888;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:.85rem 1.25rem;font-size:.9rem;font-weight:600;transition:color .15s,border-color .15s}.tab-btn.active[data-v-11d43f9a]{color:#036;border-bottom-color:#036}.tab-btn[data-v-11d43f9a]:hover:not(.active){color:#333}.container[data-v-11d43f9a]{max-width:1100px;margin:2rem auto;padding:0 1.5rem}.page-header[data-v-11d43f9a]{justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;display:flex}.page-title[data-v-11d43f9a]{color:#036;font-size:1.5rem;font-weight:700}.page-sub[data-v-11d43f9a]{color:#888;margin-top:.2rem;font-size:.82rem}.btn-primary[data-v-11d43f9a]{color:#fff;cursor:pointer;background:#036;border:none;border-radius:7px;padding:.6rem 1.25rem;font-size:.9rem;font-weight:600}.btn-primary[data-v-11d43f9a]:hover{background:#0055a5}.btn-primary-sm[data-v-11d43f9a]{color:#fff;cursor:pointer;background:#036;border:none;border-radius:5px;padding:.38rem .85rem;font-size:.82rem}.btn-primary-sm[data-v-11d43f9a]:hover{background:#0055a5}.btn-ghost[data-v-11d43f9a]{color:#666;cursor:pointer;background:0 0;border:1.5px solid #ccc;border-radius:7px;padding:.52rem .9rem;font-size:.82rem}.btn-ghost[data-v-11d43f9a]:hover{color:#333;border-color:#999}.btn-sm[data-v-11d43f9a]{color:#036;cursor:pointer;white-space:nowrap;background:#e8f0f8;border:1px solid #c5d8f0;border-radius:5px;padding:.3rem .75rem;font-size:.8rem;text-decoration:none;display:inline-block}.btn-sm[data-v-11d43f9a]:hover{background:#d0e4f5}.btn-sm-teal[data-v-11d43f9a]{color:#0d6b55;cursor:pointer;white-space:nowrap;background:#e0f5f0;border:1px solid #a8ddd0;border-radius:5px;padding:.3rem .75rem;font-size:.8rem}.btn-sm-teal[data-v-11d43f9a]:hover{background:#c0ece3}.btn-danger-sm[data-v-11d43f9a]{color:#c0392b;cursor:pointer;background:#fdecea;border:1px solid #f5c0bb;border-radius:5px;padding:.28rem .7rem;font-size:.78rem}.btn-danger-sm[data-v-11d43f9a]:hover{background:#f9d4d0}.btn-x[data-v-11d43f9a]{color:#aaa;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:.85rem}.btn-x[data-v-11d43f9a]:hover{color:#c0392b}.btn-add-subj[data-v-11d43f9a]{color:#fff;cursor:pointer;white-space:nowrap;background:#036;border:none;border-radius:5px;padding:.35rem .75rem;font-size:.8rem}.btn-add-subj[data-v-11d43f9a]:hover{background:#0055a5}.filters-bar[data-v-11d43f9a]{flex-wrap:wrap;align-items:center;gap:.65rem;margin-bottom:1.1rem;display:flex}.search-wrap[data-v-11d43f9a]{flex:200px;min-width:160px;position:relative}.search-icon[data-v-11d43f9a]{pointer-events:none;width:15px;height:15px;position:absolute;top:50%;left:.65rem;transform:translateY(-50%)}.search-input[data-v-11d43f9a]{box-sizing:border-box;border:1.5px solid #ccc;border-radius:7px;outline:none;width:100%;padding:.55rem 2rem .55rem 2.1rem;font-size:.87rem}.search-input[data-v-11d43f9a]:focus{border-color:#0055a5}.search-clear[data-v-11d43f9a]{color:#aaa;cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.filter-select[data-v-11d43f9a]{cursor:pointer;background:#fff;border:1.5px solid #ccc;border-radius:7px;outline:none;min-width:130px;padding:.52rem .75rem;font-size:.85rem}.filter-select[data-v-11d43f9a]:focus{border-color:#0055a5}.table-wrap[data-v-11d43f9a]{background:#fff;border-radius:10px;overflow:auto;box-shadow:0 2px 10px #00000012}.data-table[data-v-11d43f9a]{border-collapse:collapse;width:100%;font-size:.88rem}.data-table th[data-v-11d43f9a]{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:#666;white-space:nowrap;background:#fafbfc;border-bottom:2px solid #e8edf4;padding:.75rem 1rem;font-size:.74rem}.data-row td[data-v-11d43f9a]{border-bottom:1px solid #f0f3f7;padding:.72rem 1rem}.data-row:last-child td[data-v-11d43f9a]{border-bottom:none}.data-row:hover td[data-v-11d43f9a]{background:#f7f9fb}.mono[data-v-11d43f9a]{color:#555;font-family:ui-monospace,monospace;font-size:.82rem}.empty-row[data-v-11d43f9a]{text-align:center;color:#aaa;font-style:italic;padding:2.5rem!important}.release-cell[data-v-11d43f9a]{flex-wrap:nowrap;gap:.3rem;display:flex}.btn-rel-off[data-v-11d43f9a]{color:#888;cursor:pointer;white-space:nowrap;background:#f0f3f7;border:1px solid #d0d7e0;border-radius:4px;padding:.2rem .55rem;font-size:.73rem}.btn-rel-off[data-v-11d43f9a]:hover{color:#0d6b55;background:#e0f5f0;border-color:#a8ddd0}.btn-rel-on[data-v-11d43f9a]{color:#0d6b55;cursor:pointer;white-space:nowrap;background:#e0f5f0;border:1px solid #a8ddd0;border-radius:4px;padding:.2rem .55rem;font-size:.73rem;font-weight:700}.btn-rel-on[data-v-11d43f9a]:hover{background:#c8ede5}.inline-form-card[data-v-11d43f9a]{background:#fff;border:1.5px solid #e0e8f0;border-radius:9px;margin-bottom:1.2rem;padding:1.25rem 1.5rem}.inline-form-card h3[data-v-11d43f9a]{color:#036;margin:0 0 .9rem;font-size:.95rem;font-weight:700}.inline-form-actions[data-v-11d43f9a]{justify-content:flex-end;gap:.65rem;margin-top:.9rem;display:flex}.row-3[data-v-11d43f9a]{flex-wrap:wrap;gap:.75rem;display:flex}.field[data-v-11d43f9a]{flex-direction:column;flex:180px;gap:.3rem;display:flex}.field label[data-v-11d43f9a]{color:#444;font-size:.82rem;font-weight:600}.req[data-v-11d43f9a]{color:#c0392b}.field input[data-v-11d43f9a],.field select[data-v-11d43f9a]{border:1.5px solid #ccc;border-radius:7px;outline:none;padding:.58rem .75rem;font-family:inherit;font-size:.9rem}.field input[data-v-11d43f9a]:focus,.field select[data-v-11d43f9a]:focus{border-color:#0055a5}.prog-card[data-v-11d43f9a]{background:#fff;border-radius:10px;margin-bottom:.85rem;overflow:hidden;box-shadow:0 2px 8px #0000000f}.prog-header[data-v-11d43f9a]{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:.9rem 1.25rem;display:flex}.prog-header[data-v-11d43f9a]:hover{background:#f7f9fb}.prog-title[data-v-11d43f9a]{align-items:center;gap:.6rem;font-size:.95rem;display:flex}.prog-expand[data-v-11d43f9a]{color:#888;width:12px;font-size:.85rem}.code-badge[data-v-11d43f9a]{color:#036;background:#e8f0f8;border-radius:4px;padding:1px 7px;font-size:.75rem;font-weight:700}.count-badge[data-v-11d43f9a]{color:#888;background:#f0f3f7;border-radius:4px;padding:1px 7px;font-size:.75rem}.prog-body[data-v-11d43f9a]{border-top:1px solid #f0f3f7;padding:.75rem 1.25rem 1rem}.maj-block[data-v-11d43f9a]{border:1px solid #e8edf4;border-radius:7px;margin-bottom:.6rem;overflow:hidden}.maj-header[data-v-11d43f9a]{background:#fafbfc;justify-content:space-between;align-items:center;padding:.6rem 1rem;display:flex}.maj-title[data-v-11d43f9a]{cursor:pointer;align-items:center;gap:.5rem;font-size:.88rem;font-weight:600;display:flex}.subjects-block[data-v-11d43f9a]{padding:.5rem 1rem .75rem}.subj-row[data-v-11d43f9a]{border-bottom:1px solid #f5f6f8;align-items:center;gap:.75rem;padding:.3rem 0;font-size:.85rem;display:flex}.subj-row[data-v-11d43f9a]:last-of-type{border-bottom:none}.subj-name[data-v-11d43f9a]{flex:1}.subj-credits[data-v-11d43f9a]{color:#888;white-space:nowrap;font-size:.8rem}.add-subj-row[data-v-11d43f9a]{align-items:center;gap:.5rem;margin-top:.6rem;display:flex}.subj-input[data-v-11d43f9a]{border:1.5px solid #ccc;border-radius:5px;outline:none;flex:1;padding:.38rem .65rem;font-size:.85rem}.subj-input[data-v-11d43f9a]:focus{border-color:#036}.subj-credits-input[data-v-11d43f9a]{text-align:center;border:1.5px solid #ccc;border-radius:5px;outline:none;width:60px;padding:.38rem .5rem;font-size:.85rem}.subj-credits-input[data-v-11d43f9a]:focus{border-color:#036}.add-major-row[data-v-11d43f9a]{border-top:1px dashed #e0e8f0;align-items:center;gap:.6rem;margin-top:.75rem;padding-top:.75rem;display:flex}.maj-input[data-v-11d43f9a]{border:1.5px solid #ccc;border-radius:6px;outline:none;flex:1;padding:.42rem .75rem;font-size:.87rem}.maj-input[data-v-11d43f9a]:focus{border-color:#036}.overlay[data-v-11d43f9a]{z-index:100;background:#00000061;position:fixed;inset:0}.drawer[data-v-11d43f9a]{z-index:101;background:#fff;flex-direction:column;width:420px;max-width:95vw;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-4px 0 24px #00000026}.drawer-header[data-v-11d43f9a]{border-bottom:1.5px solid #e8edf4;flex-shrink:0;justify-content:space-between;align-items:center;padding:1.2rem 1.5rem;display:flex}.drawer-header h2[data-v-11d43f9a]{color:#036;font-size:1.05rem;font-weight:700}.drawer-close[data-v-11d43f9a]{color:#888;cursor:pointer;background:0 0;border:none;font-size:1.1rem}.drawer-close[data-v-11d43f9a]:hover{color:#333}.drawer-form[data-v-11d43f9a]{flex-direction:column;flex:1;gap:.9rem;padding:1.2rem 1.5rem;display:flex;overflow-y:auto}.row-2[data-v-11d43f9a]{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.hint-text[data-v-11d43f9a]{color:#888;margin:0;font-size:.8rem}.success-msg[data-v-11d43f9a]{color:#1e8449;background:#eafaf1;border:1.5px solid #2ecc71;border-radius:7px;padding:.7rem 1rem;font-size:.86rem}.drawer-actions[data-v-11d43f9a]{justify-content:flex-end;gap:.75rem;padding-top:.5rem;display:flex}.btn-cancel[data-v-11d43f9a]{cursor:pointer;color:#555;background:#f2f5f9;border:1.5px solid #ccc;border-radius:7px;padding:.62rem 1.2rem;font-size:.9rem}.btn-save[data-v-11d43f9a]{color:#fff;cursor:pointer;background:#036;border:none;border-radius:7px;padding:.62rem 1.4rem;font-size:.9rem;font-weight:600}.btn-save[data-v-11d43f9a]:hover{background:#0055a5}.modal[data-v-11d43f9a]{z-index:101;background:#fff;border-radius:12px;flex-direction:column;width:680px;max-width:96vw;max-height:88vh;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 12px 48px #00000038}.modal-header[data-v-11d43f9a]{border-bottom:1.5px solid #e8edf4;flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:1.2rem 1.5rem;display:flex}.modal-header h2[data-v-11d43f9a]{color:#036;font-size:1.05rem;font-weight:700}.modal-sub[data-v-11d43f9a]{color:#888;margin-top:.15rem;font-size:.82rem}.modal-body[data-v-11d43f9a]{flex:1;padding:1.2rem 1.5rem;overflow-y:auto}.modal-footer[data-v-11d43f9a]{border-top:1px solid #e8edf4;flex-shrink:0;justify-content:flex-end;padding:.9rem 1.5rem;display:flex}.mprog-block[data-v-11d43f9a]{margin-bottom:1.25rem}.mprog-title[data-v-11d43f9a]{align-items:center;gap:.5rem;margin-bottom:.6rem;font-size:.9rem;display:flex}.mmaj-row[data-v-11d43f9a]{border:1px solid #e8edf4;border-radius:7px;margin-bottom:.5rem;overflow:hidden}.toggle-label[data-v-11d43f9a]{cursor:pointer;align-items:center;gap:.6rem;padding:.6rem 1rem;font-size:.88rem;display:flex}.toggle-label input[type=checkbox][data-v-11d43f9a]{cursor:pointer;width:16px;height:16px}.mmaj-actions[data-v-11d43f9a]{align-items:center;gap:.5rem;padding:0 .75rem .5rem 2.6rem;display:flex}.badge-cloned[data-v-11d43f9a]{color:#0d6b55;background:#e0f5f0;border:1px solid #a8ddd0;border-radius:20px;padding:1px 9px;font-size:.75rem;font-weight:600}.clone-editor[data-v-11d43f9a]{background:#f7fbff;border-top:1px solid #d0e4f5;padding:.75rem 1rem}.clone-editor-header[data-v-11d43f9a]{color:#555;margin-bottom:.6rem;font-size:.8rem}.fade-enter-active[data-v-11d43f9a],.fade-leave-active[data-v-11d43f9a]{transition:opacity .2s}.fade-enter-from[data-v-11d43f9a],.fade-leave-to[data-v-11d43f9a]{opacity:0}.slide-enter-active[data-v-11d43f9a],.slide-leave-active[data-v-11d43f9a]{transition:transform .25s}.slide-enter-from[data-v-11d43f9a],.slide-leave-to[data-v-11d43f9a]{transform:translate(100%)}.modal-pop-enter-active[data-v-11d43f9a],.modal-pop-leave-active[data-v-11d43f9a]{transition:opacity .2s,transform .2s}.modal-pop-enter-from[data-v-11d43f9a],.modal-pop-leave-to[data-v-11d43f9a]{opacity:0;transform:translate(-50%,-48%)scale(.96)}.page-wrapper[data-v-dc95b764]{background:#f2f5f9;min-height:100vh}.navbar[data-v-dc95b764]{color:#fff;background:#1a5276;justify-content:space-between;align-items:center;padding:.85rem 2rem;display:flex}.brand-text[data-v-dc95b764]{font-size:1.05rem;font-weight:700}.nav-right[data-v-dc95b764]{align-items:center;gap:1rem;display:flex}.btn-logout[data-v-dc95b764]{color:#fff;cursor:pointer;background:0 0;border:1.5px solid #ffffff8c;border-radius:5px;padding:.3rem .85rem;font-size:.82rem}.btn-logout[data-v-dc95b764]:hover{background:#ffffff21}.container[data-v-dc95b764]{max-width:1200px;margin:2rem auto;padding:0 1.5rem}.page-header[data-v-dc95b764]{justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;display:flex}.page-title[data-v-dc95b764]{color:#1a5276;font-size:1.5rem;font-weight:700}.page-sub[data-v-dc95b764]{color:#888;margin-top:.2rem;font-size:.82rem}.btn-primary[data-v-dc95b764]{color:#fff;cursor:pointer;background:#1a5276;border:none;border-radius:7px;padding:.6rem 1.25rem;font-size:.9rem;font-weight:600}.btn-primary[data-v-dc95b764]:hover{background:#2471a3}.table-wrap[data-v-dc95b764]{background:#fff;border-radius:10px;overflow:auto;box-shadow:0 2px 10px #00000012}.students-table[data-v-dc95b764]{border-collapse:collapse;width:100%;font-size:.88rem}.students-table th[data-v-dc95b764]{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:#666;white-space:nowrap;background:#fafbfc;border-bottom:2px solid #e8edf4;padding:.75rem 1rem;font-size:.74rem}.data-row td[data-v-dc95b764]{vertical-align:middle;border-bottom:1px solid #f0f3f7;padding:.7rem 1rem}.data-row:last-child td[data-v-dc95b764]{border-bottom:none}.data-row:hover td[data-v-dc95b764]{background:#f7f9fb}.mono[data-v-dc95b764]{color:#555;font-family:ui-monospace,monospace;font-size:.82rem}.empty-row[data-v-dc95b764]{text-align:center;color:#aaa;font-style:italic;padding:2.5rem!important}.badge-new[data-v-dc95b764]{color:#888;white-space:nowrap;background:#f0f3f7;border:1px solid #d0d7e0;border-radius:20px;padding:2px 10px;font-size:.76rem;font-weight:600}.badge-offer[data-v-dc95b764]{color:#1a6ca8;white-space:nowrap;background:#e8f4fd;border:1px solid #b8d9f5;border-radius:20px;padding:2px 10px;font-size:.76rem;font-weight:600}.badge-admission[data-v-dc95b764]{color:#1d4ed8;white-space:nowrap;background:#dbeafe;border:1px solid #93c5fd;border-radius:20px;padding:2px 10px;font-size:.76rem;font-weight:600}.badge-confirmed[data-v-dc95b764]{color:#92400e;white-space:nowrap;background:#fef3c7;border:1px solid #fcd34d;border-radius:20px;padding:2px 10px;font-size:.76rem;font-weight:600}.badge-graded[data-v-dc95b764]{color:#0d6b55;white-space:nowrap;background:#e0f5f0;border:1px solid #a8ddd0;border-radius:20px;padding:2px 10px;font-size:.76rem;font-weight:600}.badge-approved[data-v-dc95b764]{color:#065f46;white-space:nowrap;background:#d1fae5;border:1px solid #6ee7b7;border-radius:20px;padding:2px 10px;font-size:.76rem;font-weight:600}.actions-cell[data-v-dc95b764]{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.btn-act[data-v-dc95b764]{cursor:pointer;white-space:nowrap;border:none;border-radius:5px;padding:.28rem .7rem;font-size:.78rem;font-weight:500}.btn-act[data-v-dc95b764]:disabled{opacity:.38;cursor:default}.btn-offer[data-v-dc95b764]{color:#1a6ca8;background:#e8f4fd;border:1px solid #b8d9f5}.btn-offer[data-v-dc95b764]:hover:not(:disabled){background:#cce8f8}.btn-admission[data-v-dc95b764]{color:#1d4ed8;background:#dbeafe;border:1px solid #93c5fd}.btn-admission[data-v-dc95b764]:hover:not(:disabled){background:#bfdbfe}.btn-grade[data-v-dc95b764]{color:#fff;background:#1a5276}.btn-grade[data-v-dc95b764]:hover:not(:disabled){background:#2471a3}.btn-confirm[data-v-dc95b764]{color:#92400e;background:#fef3c7;border:1px solid #fcd34d}.btn-confirm[data-v-dc95b764]:hover:not(:disabled){background:#fde68a}.confirmed-chip[data-v-dc95b764]{color:#065f46;white-space:nowrap;padding:.28rem 0;font-size:.76rem;font-weight:600}.btn-cert[data-v-dc95b764]{color:#065f46;background:#d1fae5;border:1px solid #6ee7b7}.btn-cert[data-v-dc95b764]:hover:not(:disabled){background:#a7f3d0}.drawer-overlay[data-v-dc95b764]{z-index:100;background:#0006;position:fixed;inset:0}.drawer[data-v-dc95b764]{z-index:101;background:#fff;flex-direction:column;width:820px;max-width:96vw;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-4px 0 24px #00000026}.drawer-narrow[data-v-dc95b764]{width:440px}.drawer-header[data-v-dc95b764]{border-bottom:1.5px solid #e8edf4;flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.5rem;display:flex}.drawer-header h2[data-v-dc95b764]{color:#1a5276;font-size:1.1rem;font-weight:700}.drawer-sub[data-v-dc95b764]{color:#888;margin-top:.2rem;font-size:.82rem}.drawer-close[data-v-dc95b764]{color:#888;cursor:pointer;background:0 0;border:none;padding:.2rem;font-size:1.1rem}.drawer-close[data-v-dc95b764]:hover{color:#333}.drawer-form[data-v-dc95b764]{flex-direction:column;flex:1;gap:.9rem;padding:1.2rem 1.5rem;display:flex;overflow-y:auto}.drawer-actions[data-v-dc95b764]{border-top:1px solid #e8edf4;flex-shrink:0;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.btn-cancel[data-v-dc95b764]{cursor:pointer;color:#555;background:#f2f5f9;border:1.5px solid #ccc;border-radius:7px;padding:.65rem 1.2rem;font-size:.9rem}.btn-save[data-v-dc95b764]{color:#fff;cursor:pointer;background:#1a5276;border:none;border-radius:7px;padding:.65rem 1.4rem;font-size:.9rem;font-weight:600}.btn-save[data-v-dc95b764]:hover{background:#2471a3}.row-2[data-v-dc95b764]{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.field[data-v-dc95b764]{flex-direction:column;gap:.3rem;display:flex}.field label[data-v-dc95b764]{color:#444;font-size:.82rem;font-weight:600}.req[data-v-dc95b764]{color:#c0392b}.field input[data-v-dc95b764],.field select[data-v-dc95b764]{border:1.5px solid #ccc;border-radius:7px;outline:none;padding:.58rem .75rem;font-family:inherit;font-size:.9rem}.field input[data-v-dc95b764]:focus,.field select[data-v-dc95b764]:focus{border-color:#1a5276}.input-locked[data-v-dc95b764]{color:#666;cursor:not-allowed;background:#f5f5f5}.success-msg[data-v-dc95b764]{color:#1e8449;background:#eafaf1;border:1.5px solid #2ecc71;border-radius:7px;flex-shrink:0;margin:.75rem 1.5rem 0;padding:.65rem 1rem;font-size:.88rem}.modal-overlay[data-v-dc95b764]{z-index:100;background:#00000073;position:fixed;inset:0}.modal[data-v-dc95b764]{z-index:101;background:#fff;border-radius:12px;flex-direction:column;width:680px;max-width:96vw;max-height:90vh;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 12px 48px #00000038}.modal-wide[data-v-dc95b764]{width:860px}.modal-header[data-v-dc95b764]{border-bottom:1.5px solid #e8edf4;flex-shrink:0;justify-content:space-between;align-items:center;padding:1.1rem 1.5rem;display:flex}.modal-header h2[data-v-dc95b764]{color:#1a5276;font-size:1.05rem;font-weight:700}.modal-header-actions[data-v-dc95b764]{align-items:center;gap:.75rem;display:flex}.btn-print[data-v-dc95b764]{color:#fff;cursor:pointer;background:#1a5276;border:none;border-radius:6px;padding:.38rem .95rem;font-size:.84rem;font-weight:600}.btn-print[data-v-dc95b764]:hover{background:#2471a3}.modal-body[data-v-dc95b764]{flex:1;padding:1.5rem;overflow-y:auto}.letter-sheet[data-v-dc95b764]{background:#fff;border:1px solid #e0e8f0;border-radius:6px;max-width:580px;margin:0 auto;padding:2rem 2.25rem;font-size:.9rem;line-height:1.7}.letter-header-block[data-v-dc95b764]{align-items:flex-start;gap:1rem;margin-bottom:.75rem;display:flex}.letter-logo-text[data-v-dc95b764]{color:#036;letter-spacing:-1px;flex-shrink:0;font-size:2rem;font-weight:900;line-height:1}.letter-org[data-v-dc95b764]{font-size:.82rem}.letter-org strong[data-v-dc95b764]{color:#036;font-size:.9rem}.letter-org-sub[data-v-dc95b764]{color:#777;font-size:.78rem}.letter-rule[data-v-dc95b764]{border:none;border-top:2px solid #036;margin:.75rem 0 1rem}.letter-date[data-v-dc95b764]{color:#666;margin-bottom:1rem;font-size:.83rem}.letter-type-heading[data-v-dc95b764]{letter-spacing:1px;color:#036;margin-bottom:1rem;font-size:1rem;font-weight:700}.letter-dear[data-v-dc95b764]{margin-bottom:.75rem}.letter-body-text[data-v-dc95b764]{text-align:justify;color:#333;margin-bottom:.75rem}.letter-details-table[data-v-dc95b764]{border-collapse:collapse;width:100%;margin:1rem 0;font-size:.84rem}.ldt-label[data-v-dc95b764]{color:#666;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #eee;width:38%;padding:5px 8px 5px 0;font-size:.8rem;font-weight:600}.ldt-val[data-v-dc95b764]{color:#222;border-bottom:1px solid #eee;padding:5px 0}.letter-sign[data-v-dc95b764]{margin-top:1.5rem;font-size:.88rem}.letter-sig-line[data-v-dc95b764]{border-top:1px solid #999;width:160px;margin:1.5rem 0 .4rem}.letter-sig-name[data-v-dc95b764]{margin:0;font-weight:700}.letter-sig-org[data-v-dc95b764]{color:#666;margin:2px 0;font-size:.82rem}.cert-section-title[data-v-dc95b764]{text-transform:uppercase;letter-spacing:.06em;color:#036;margin:0 0 .6rem;font-size:.82rem;font-weight:700}.cert-grade-table[data-v-dc95b764]{border-collapse:collapse;width:100%;margin-bottom:1.25rem;font-size:.84rem}.cert-grade-table th[data-v-dc95b764]{color:#fff;text-align:center;text-transform:uppercase;letter-spacing:.04em;background:#036;padding:.5rem .75rem;font-size:.74rem}.cert-grade-table th[data-v-dc95b764]:first-child{text-align:left}.cert-grade-table td[data-v-dc95b764]{border-bottom:1px solid #e8edf4;padding:.45rem .75rem}.tc[data-v-dc95b764]{text-align:center}.cert-gp[data-v-dc95b764]{color:#036;background:#eaf0f8;font-weight:600}.cert-total-row td[data-v-dc95b764]{background:#f0f3f7;border-top:2px solid #ccd;font-size:.88rem}.cert-gpa-row td[data-v-dc95b764]{background:#e8f0f8}.cert-gpa-label[data-v-dc95b764]{text-align:right;color:#555;padding-right:.75rem;font-size:.82rem;font-style:italic}.cert-gpa-val[data-v-dc95b764]{font-size:.95rem}.cert-approved-stamp[data-v-dc95b764]{border:3px double #0d6b55;margin-top:1.25rem;padding:.5rem 1rem;display:inline-block}.cert-stamp-text[data-v-dc95b764]{color:#0d6b55;letter-spacing:2px;font-size:1.1rem;font-weight:900}.cert-stamp-date[data-v-dc95b764]{color:#555;margin-top:2px;font-size:.78rem}.student-info-strip[data-v-dc95b764]{color:#444;background:#f7f9fb;border-bottom:1px solid #e8edf4;flex-wrap:wrap;flex-shrink:0;gap:1.5rem;padding:.7rem 1.5rem;font-size:.83rem;display:flex}.grade-table-wrap[data-v-dc95b764]{flex:1;padding:1.25rem 1.5rem 0;overflow:auto}.grade-table[data-v-dc95b764]{border-collapse:collapse;width:100%;font-size:.85rem}.grade-table th[data-v-dc95b764]{text-align:center;text-transform:uppercase;letter-spacing:.04em;color:#555;white-space:nowrap;background:#f2f5f9;border:1px solid #e0e7ef;padding:.55rem .6rem;font-size:.72rem;line-height:1.3}.grade-table th[data-v-dc95b764]:first-child{text-align:left}.grade-table td[data-v-dc95b764]{vertical-align:middle;border:1px solid #e8edf4;padding:.55rem .6rem}.grade-table tbody tr:hover td[data-v-dc95b764]{background:#f9fbfd}.num-col[data-v-dc95b764]{text-align:center;width:72px}.calc-cell[data-v-dc95b764]{color:#1a5276;background:#f7fbff;font-weight:600}.highlight[data-v-dc95b764]{color:#036;font-weight:700;background:#eaf4ff!important}.remark-cell[data-v-dc95b764]{color:#555;min-width:220px;font-size:.78rem}.grade-input[data-v-dc95b764]{text-align:center;border:1.5px solid #ccc;border-radius:5px;outline:none;width:62px;padding:.3rem .35rem;font-size:.88rem}.grade-input[data-v-dc95b764]:focus{border-color:#1a5276}.total-row td[data-v-dc95b764]{background:#f2f5f9;border-top:2px solid #d0dbe8;font-size:.88rem}.gpa-row td[data-v-dc95b764]{background:#eaf0f8}.gpa-label[data-v-dc95b764]{text-align:right;color:#555;padding-right:.8rem;font-size:.82rem}.gpa-val[data-v-dc95b764]{color:#036;font-size:1rem}.fade-enter-active[data-v-dc95b764],.fade-leave-active[data-v-dc95b764]{transition:opacity .22s}.fade-enter-from[data-v-dc95b764],.fade-leave-to[data-v-dc95b764]{opacity:0}.slide-enter-active[data-v-dc95b764],.slide-leave-active[data-v-dc95b764]{transition:transform .25s}.slide-enter-from[data-v-dc95b764],.slide-leave-to[data-v-dc95b764]{transform:translate(100%)}.modal-pop-enter-active[data-v-dc95b764],.modal-pop-leave-active[data-v-dc95b764]{transition:opacity .18s,transform .18s}.modal-pop-enter-from[data-v-dc95b764],.modal-pop-leave-to[data-v-dc95b764]{opacity:0;transform:translate(-50%,-47%)scale(.96)}.page-wrapper[data-v-01103066]{background:#f2f5f9;min-height:100vh}.navbar[data-v-01103066]{color:#fff;background:#036;align-items:center;gap:1rem;padding:.85rem 2rem;display:flex}.brand-text[data-v-01103066]{white-space:nowrap;font-size:1.05rem;font-weight:700}.nav-links[data-v-01103066]{flex:1;gap:.25rem;padding:0 1rem;display:flex}.nav-link[data-v-01103066]{color:#ffffffbf;border-radius:5px;padding:.35rem .9rem;font-size:.88rem;text-decoration:none;transition:background .15s}.nav-link[data-v-01103066]:hover,.nav-link.router-link-active[data-v-01103066]{color:#fff;background:#ffffff26}.nav-right[data-v-01103066]{align-items:center;gap:1rem;display:flex}.btn-logout[data-v-01103066]{color:#fff;cursor:pointer;background:0 0;border:1.5px solid #ffffff8c;border-radius:5px;padding:.3rem .85rem;font-size:.82rem}.btn-logout[data-v-01103066]:hover{background:#ffffff21}.tab-bar[data-v-01103066]{background:#fff;border-bottom:2px solid #e8edf4;padding:0 2rem;display:flex}.tab-btn[data-v-01103066]{color:#888;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:.85rem 1.25rem;font-size:.9rem;font-weight:600;transition:color .15s,border-color .15s}.tab-btn.active[data-v-01103066]{color:#036;border-bottom-color:#036}.container[data-v-01103066]{max-width:900px;margin:2rem auto;padding:0 1.5rem}.page-header[data-v-01103066]{justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;display:flex}.page-title[data-v-01103066]{color:#036;font-size:1.5rem;font-weight:700}.page-sub[data-v-01103066]{color:#888;margin-top:.2rem;font-size:.82rem}.btn-primary[data-v-01103066]{color:#fff;cursor:pointer;background:#036;border:none;border-radius:7px;padding:.6rem 1.25rem;font-size:.9rem;font-weight:600}.btn-primary[data-v-01103066]:hover{background:#0055a5}.btn-primary-sm[data-v-01103066]{color:#fff;cursor:pointer;white-space:nowrap;background:#036;border:none;border-radius:5px;padding:.38rem .85rem;font-size:.82rem}.btn-primary-sm[data-v-01103066]:hover{background:#0055a5}.btn-ghost[data-v-01103066]{color:#666;cursor:pointer;background:0 0;border:1.5px solid #ccc;border-radius:7px;padding:.5rem .9rem;font-size:.82rem}.btn-del[data-v-01103066]{color:#c0392b;cursor:pointer;background:#fdecea;border:1px solid #f5c0bb;border-radius:5px;padding:.25rem .65rem;font-size:.78rem}.btn-del[data-v-01103066]:hover{background:#f9d4d0}.btn-add[data-v-01103066]{color:#fff;cursor:pointer;white-space:nowrap;background:#036;border:none;border-radius:5px;padding:.35rem .75rem;font-size:.8rem}.btn-add[data-v-01103066]:hover{background:#0055a5}.btn-x[data-v-01103066]{color:#bbb;cursor:pointer;background:0 0;border:none;padding:0 3px;font-size:.82rem}.btn-x[data-v-01103066]:hover{color:#c0392b}.btn-link[data-v-01103066]{color:#0055a5;white-space:nowrap;border-radius:5px;padding:.25rem .6rem;font-size:.82rem;font-weight:600;text-decoration:none;transition:background .15s}.btn-link[data-v-01103066]:hover{background:#e8f0f8}.inline-card[data-v-01103066]{background:#fff;border:1.5px solid #dde6f0;border-radius:9px;margin-bottom:1.2rem;padding:1.2rem 1.4rem}.inline-card h3[data-v-01103066]{color:#036;margin:0 0 .85rem;font-size:.95rem;font-weight:700}.inline-actions[data-v-01103066]{justify-content:flex-end;gap:.6rem;margin-top:.85rem;display:flex}.row-2[data-v-01103066]{flex-wrap:wrap;gap:.75rem;display:flex}.field[data-v-01103066]{flex-direction:column;flex:180px;gap:.28rem;display:flex}.field label[data-v-01103066]{color:#444;font-size:.8rem;font-weight:600}.req[data-v-01103066]{color:#c0392b}.field input[data-v-01103066]{border:1.5px solid #ccc;border-radius:6px;outline:none;padding:.55rem .75rem;font-family:inherit;font-size:.9rem}.field input[data-v-01103066]:focus{border-color:#0055a5}.acc-card[data-v-01103066]{background:#fff;border-radius:10px;margin-bottom:.85rem;overflow:hidden;box-shadow:0 2px 8px #0000000f}.acc-header[data-v-01103066]{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:.9rem 1.25rem;display:flex}.acc-header[data-v-01103066]:hover{background:#f7f9fb}.acc-title[data-v-01103066]{flex:1;align-items:center;gap:.55rem;font-size:.93rem;display:flex}.arrow[data-v-01103066]{color:#888;width:12px;font-size:.82rem}.acc-body[data-v-01103066]{border-top:1px solid #f0f3f7;padding:.75rem 1.25rem 1rem}.badge-code[data-v-01103066]{color:#036;background:#e8f0f8;border-radius:4px;padding:1px 7px;font-size:.73rem;font-weight:700}.badge-count[data-v-01103066]{color:#777;background:#f0f3f7;border-radius:4px;padding:1px 7px;font-size:.73rem}.badge-clone[data-v-01103066]{color:#0d6b55;background:#e0f5f0;border-radius:4px;padding:1px 7px;font-size:.73rem;font-weight:600}.badge-type[data-v-01103066]{color:#5b21b6;text-transform:capitalize;background:#f0e8ff;border-radius:4px;padding:1px 7px;font-size:.73rem;font-weight:600}.maj-block[data-v-01103066]{border:1px solid #e8edf4;border-radius:7px;margin-bottom:.55rem;overflow:hidden}.maj-header[data-v-01103066]{background:#fafbfc;justify-content:space-between;align-items:center;padding:.55rem .9rem;display:flex}.maj-title[data-v-01103066]{cursor:pointer;flex:1;align-items:center;gap:.45rem;font-size:.87rem;font-weight:600;display:flex}.subj-block[data-v-01103066]{padding:.5rem .9rem .75rem}.subj-row[data-v-01103066]{border-bottom:1px solid #f5f6f8;align-items:center;gap:.7rem;padding:.28rem 0;font-size:.84rem;display:flex}.subj-row[data-v-01103066]:last-of-type{border-bottom:none}.sname[data-v-01103066]{flex:1}.scr[data-v-01103066]{color:#999;font-size:.78rem}.add-row[data-v-01103066]{align-items:center;gap:.45rem;margin-top:.55rem;display:flex}.inp-wide[data-v-01103066]{border:1.5px solid #ccc;border-radius:5px;outline:none;flex:1;padding:.36rem .6rem;font-size:.84rem}.inp-wide[data-v-01103066]:focus{border-color:#036}.inp-num[data-v-01103066]{text-align:center;border:1.5px solid #ccc;border-radius:5px;outline:none;width:58px;padding:.36rem .45rem;font-size:.84rem}.inp-num[data-v-01103066]:focus{border-color:#036}.add-major-row[data-v-01103066]{border-top:1px dashed #dde6f0;align-items:center;gap:.55rem;margin-top:.7rem;padding-top:.7rem;display:flex}.view-section-title[data-v-01103066]{text-transform:uppercase;letter-spacing:.06em;color:#888;margin-top:.2rem;margin-bottom:.6rem;font-size:.75rem;font-weight:700}.view-prog-block[data-v-01103066]{margin-bottom:.75rem}.view-prog-name[data-v-01103066]{align-items:center;gap:.5rem;margin-bottom:.3rem;font-size:.87rem;font-weight:600;display:flex}.view-maj-list[data-v-01103066]{padding-left:1.2rem}.view-maj-row[data-v-01103066]{color:#444;align-items:center;gap:.5rem;padding:.18rem 0;font-size:.84rem;display:flex}.dot-on[data-v-01103066]{color:#27ae60}.dot-off[data-v-01103066]{color:#ccc}.view-clone-block[data-v-01103066]{border:1px solid #e8edf4;border-radius:7px;margin-bottom:.5rem;padding:.65rem .9rem}.view-clone-header[data-v-01103066]{align-items:center;gap:.5rem;margin-bottom:.4rem;font-size:.87rem;display:flex}.view-subj-list[data-v-01103066]{flex-wrap:wrap;gap:.4rem;margin-top:.35rem;display:flex}.subj-pill[data-v-01103066]{color:#555;background:#f0f3f7;border-radius:20px;padding:2px 10px;font-size:.78rem}.empty-note[data-v-01103066]{color:#bbb;padding:.5rem 0;font-size:.83rem;font-style:italic}.page-wrapper[data-v-309b8be0]{background:#f2f5f9;min-height:100vh}.navbar[data-v-309b8be0]{color:#fff;background:#036;align-items:center;gap:1rem;padding:.85rem 2rem;display:flex}.brand-text[data-v-309b8be0]{white-space:nowrap;font-size:1.05rem;font-weight:700}.nav-links[data-v-309b8be0]{flex:1;gap:.25rem;padding:0 1rem;display:flex}.nav-link[data-v-309b8be0]{color:#ffffffbf;border-radius:5px;padding:.35rem .9rem;font-size:.88rem;text-decoration:none;transition:background .15s}.nav-link[data-v-309b8be0]:hover,.nav-link.router-link-active[data-v-309b8be0]{color:#fff;background:#ffffff26}.nav-right[data-v-309b8be0]{align-items:center;display:flex}.btn-logout[data-v-309b8be0]{color:#fff;cursor:pointer;background:0 0;border:1.5px solid #ffffff8c;border-radius:5px;padding:.3rem .85rem;font-size:.82rem}.btn-logout[data-v-309b8be0]:hover{background:#ffffff21}.breadcrumb[data-v-309b8be0]{color:#888;background:#fff;border-bottom:1px solid #e8edf4;align-items:center;gap:.4rem;padding:.75rem 2rem;font-size:.84rem;display:flex}.bc-link[data-v-309b8be0]{color:#0055a5;text-decoration:none}.bc-link[data-v-309b8be0]:hover{text-decoration:underline}.bc-sep[data-v-309b8be0]{color:#ccc}.bc-current[data-v-309b8be0]{color:#333;font-weight:600}.tab-bar[data-v-309b8be0]{background:#fff;border-bottom:2px solid #e8edf4;padding:0 2rem;display:flex}.tab-btn[data-v-309b8be0]{color:#888;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:.85rem 1.25rem;font-size:.9rem;font-weight:600;transition:color .15s,border-color .15s}.tab-btn.active[data-v-309b8be0]{color:#036;border-bottom-color:#036}.container[data-v-309b8be0]{max-width:860px;margin:2rem auto;padding:0 1.5rem}.container.wide[data-v-309b8be0]{max-width:960px}.page-header[data-v-309b8be0]{justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;display:flex}.page-title[data-v-309b8be0]{color:#036;font-size:1.4rem;font-weight:700}.page-sub[data-v-309b8be0]{color:#888;margin-top:.2rem;font-size:.82rem}.not-found[data-v-309b8be0]{color:#888;padding:2rem 0;font-style:italic}.section-heading[data-v-309b8be0]{color:#555;margin:0 0 .85rem;font-size:1rem;font-weight:700}.info-card[data-v-309b8be0]{background:#fff;border-radius:10px;padding:1.4rem 1.5rem;box-shadow:0 2px 8px #0000000f}.info-row[data-v-309b8be0]{border-bottom:1px solid #f0f3f7;gap:1rem;padding:.5rem 0;font-size:.88rem;display:flex}.info-row[data-v-309b8be0]:last-of-type{border-bottom:none}.info-label[data-v-309b8be0]{color:#888;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;width:180px;padding-top:1px;font-size:.8rem;font-weight:600}.mono[data-v-309b8be0]{font-family:ui-monospace,monospace;font-size:.84rem}.card-subtitle[data-v-309b8be0]{color:#036;margin:0 0 .85rem;font-size:.95rem;font-weight:700}.inline-actions[data-v-309b8be0]{justify-content:flex-end;gap:.6rem;margin-top:.85rem;display:flex}.success-inline[data-v-309b8be0]{color:#1e8449;text-align:right;margin:.5rem 0 0;font-size:.84rem}.row-2[data-v-309b8be0]{gap:.75rem;display:flex}.field[data-v-309b8be0]{flex-direction:column;flex:200px;gap:.28rem;display:flex}.field label[data-v-309b8be0]{color:#444;font-size:.8rem;font-weight:600}.field input[data-v-309b8be0]{border:1.5px solid #ccc;border-radius:6px;outline:none;padding:.55rem .75rem;font-family:inherit;font-size:.9rem}.field input[data-v-309b8be0]:focus{border-color:#0055a5}.acc-card[data-v-309b8be0]{background:#fff;border-radius:10px;margin-bottom:.75rem;overflow:hidden;box-shadow:0 2px 8px #0000000f}.acc-header[data-v-309b8be0]{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1.2rem;display:flex}.acc-header[data-v-309b8be0]:hover{background:#f7f9fb}.acc-title[data-v-309b8be0]{flex-wrap:wrap;flex:1;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.arrow[data-v-309b8be0]{color:#888;width:12px;font-size:.82rem}.acc-body[data-v-309b8be0]{border-top:1px solid #f0f3f7;padding:.5rem 1.2rem 1rem}.badge-code[data-v-309b8be0]{color:#036;background:#e8f0f8;border-radius:4px;padding:1px 7px;font-size:.72rem;font-weight:700}.badge-count[data-v-309b8be0]{color:#777;background:#f0f3f7;border-radius:4px;padding:1px 7px;font-size:.72rem}.badge-cloned[data-v-309b8be0]{color:#0d6b55;background:#e0f5f0;border-radius:4px;padding:1px 7px;font-size:.72rem;font-weight:600}.core-maj-section[data-v-309b8be0]{margin-bottom:.2rem}.maj-row-prog[data-v-309b8be0]{border-bottom:1px solid #f5f6f8;justify-content:space-between;align-items:center;padding:.52rem .5rem;display:flex}.toggle-wrap[data-v-309b8be0]{cursor:pointer;align-items:center;gap:.5rem;font-size:.88rem;display:flex}.toggle-wrap input[type=checkbox][data-v-309b8be0]{cursor:pointer;width:15px;height:15px}.toggle-name[data-v-309b8be0]{color:#333;font-weight:500}.core-tag[data-v-309b8be0]{color:#999;text-transform:uppercase;letter-spacing:.03em;background:#f0f3f7;border-radius:3px;padding:0 5px;font-size:.67rem;font-weight:600}.clone-indent[data-v-309b8be0]{margin-bottom:.15rem;margin-left:1.8rem}.clone-row-header[data-v-309b8be0]{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fafbfc;border:1px solid #e8edf4;border-radius:6px;align-items:center;gap:.45rem;margin-top:.25rem;padding:.42rem .6rem;display:flex}.clone-row-header[data-v-309b8be0]:hover{background:#f0f5fa}.arrow-sm[data-v-309b8be0]{color:#aaa;flex-shrink:0;width:10px;font-size:.72rem}.clone-row-name[data-v-309b8be0]{color:#333;flex:1;font-size:.86rem;font-weight:500}.clone-row-body[data-v-309b8be0]{background:#f7f9fc;border:1px solid #e8edf4;border-top:none;border-radius:0 0 6px 6px;padding:.55rem .75rem .65rem}.badge-custom-tag[data-v-309b8be0]{color:#b45309;text-transform:uppercase;background:#fff0e0;border-radius:3px;flex-shrink:0;padding:1px 6px;font-size:.67rem;font-weight:700}.rename-input[data-v-309b8be0]{background:#fff;border:1.5px solid #0055a5;border-radius:4px;outline:none;flex:1;min-width:0;padding:.18rem .45rem;font-family:inherit;font-size:.86rem}.btn-icon[data-v-309b8be0]{color:#bbb;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:.9rem;line-height:1}.btn-icon[data-v-309b8be0]:hover{color:#036}.custom-maj-divider[data-v-309b8be0]{text-transform:uppercase;letter-spacing:.06em;color:#aaa;margin:1rem 0 .3rem .3rem;font-size:.72rem;font-weight:700}.custom-maj-row-wrap[data-v-309b8be0]{margin-bottom:.25rem}.empty-note[data-v-309b8be0]{color:#bbb;margin:.2rem 0 .4rem;font-size:.82rem;font-style:italic}.add-custom-row[data-v-309b8be0]{border-top:1px dashed #dde6f0;align-items:center;gap:.5rem;margin-top:.85rem;padding-top:.75rem;display:flex}.subj-row[data-v-309b8be0]{border-bottom:1px solid #edf0f4;align-items:center;gap:.7rem;padding:.26rem 0;font-size:.83rem;display:flex}.subj-row[data-v-309b8be0]:last-of-type{border-bottom:none}.sname[data-v-309b8be0]{flex:1}.scr[data-v-309b8be0]{color:#999;font-size:.77rem}.add-row[data-v-309b8be0]{align-items:center;gap:.42rem;margin-top:.5rem;display:flex}.inp-wide[data-v-309b8be0]{border:1.5px solid #ccc;border-radius:5px;outline:none;flex:1;padding:.34rem .6rem;font-family:inherit;font-size:.84rem}.inp-wide[data-v-309b8be0]:focus{border-color:#036}.inp-num[data-v-309b8be0]{text-align:center;border:1.5px solid #ccc;border-radius:5px;outline:none;width:58px;padding:.34rem .45rem;font-size:.84rem}.inp-num[data-v-309b8be0]:focus{border-color:#036}.btn-primary[data-v-309b8be0]{color:#fff;cursor:pointer;background:#036;border:none;border-radius:7px;padding:.55rem 1.2rem;font-size:.88rem;font-weight:600}.btn-primary[data-v-309b8be0]:hover:not(:disabled){background:#0055a5}.btn-primary[data-v-309b8be0]:disabled{opacity:.5;cursor:default}.btn-primary-sm[data-v-309b8be0]{color:#fff;cursor:pointer;white-space:nowrap;background:#036;border:none;border-radius:5px;padding:.36rem .85rem;font-size:.82rem}.btn-primary-sm[data-v-309b8be0]:hover{background:#0055a5}.btn-sm[data-v-309b8be0]{color:#036;cursor:pointer;white-space:nowrap;background:#e8f0f8;border:1px solid #c5d8f0;border-radius:5px;padding:.26rem .65rem;font-size:.78rem}.btn-sm[data-v-309b8be0]:hover{background:#d0e4f5}.btn-add[data-v-309b8be0]{color:#fff;cursor:pointer;white-space:nowrap;background:#036;border:none;border-radius:5px;padding:.33rem .7rem;font-size:.8rem}.btn-add[data-v-309b8be0]:hover{background:#0055a5}.btn-del-xs[data-v-309b8be0]{color:#c0392b;cursor:pointer;white-space:nowrap;background:#fdecea;border:1px solid #f5c0bb;border-radius:4px;flex-shrink:0;padding:.18rem .5rem;font-size:.73rem}.btn-del-xs[data-v-309b8be0]:hover{background:#f9d4d0}.btn-x[data-v-309b8be0]{color:#bbb;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 3px;font-size:.82rem}.btn-x[data-v-309b8be0]:hover{color:#c0392b}
