.nav[data-v-14d82bc9]{text-align:center;padding:10px}.nav ul[data-v-14d82bc9]{list-style-type:none;padding:0;padding-bottom:10px;margin:0;display:flex;gap:15px;justify-content:center}.nav li[data-v-14d82bc9]{display:inline}.nav a[data-v-14d82bc9]{text-decoration:none;color:#2c3e50;font-weight:700}.nav a[data-v-14d82bc9]:hover{color:#a15abd;cursor:pointer}#app{font-family:Avenir,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-align:center;color:#31084d}.stack{margin:40px 15px 15px 15px;width:40px;height:40px}.stack:hover{margin-top:35px;height:45px}.header{align-items:center}.logo{max-width:100%;min-width:380px;margin:0 auto}.content{flex-grow:1}.page-container{background-color:rgba(170,248,213,.863);padding:40px;width:80%;margin:auto;margin-top:60px;border-radius:8px;border:3px solid green;display:flex;flex-direction:column;min-height:750px}@media(max-width:800px){.page-container{background-color:rgba(170,248,213,.863);padding:0;min-height:100vh;width:100%;position:absolute;top:0;margin:0;border-radius:0;border:0 solid green}}body,html{margin:0;height:100%}body{background-image:url(/img/green-background2.2bc4fdad.jpg);background-size:cover;background-position:50%;background-repeat:no-repeat}.signInForm>.row[data-v-57961d7e]{display:flex;justify-content:flex-end;align-items:center;margin-bottom:20px;width:100%}.login-form-container[data-v-57961d7e]{margin-left:auto;margin-right:auto;width:50%;border:none;padding:30px;display:flex;flex-direction:column;align-items:center}.login[data-v-57961d7e]{width:120px;height:40px}.right[data-v-57961d7e]{text-align:right}.tracker-list-container[data-v-0d1f05f6]{width:100%;max-width:600px;margin:0 auto}.controls[data-v-0d1f05f6]{margin-bottom:20px}.filter-input[data-v-0d1f05f6]{width:100%;padding:10px;border-radius:4px;border:1px solid #ccc;font-size:16px;box-sizing:border-box}.tracker-list[data-v-0d1f05f6]{list-style-type:none;padding:0;margin:0}.tracker-item[data-v-0d1f05f6]{background:#17533c;color:#fff;margin-bottom:10px;border-radius:8px;display:flex;flex-direction:column;transition:.2s;text-align:left;cursor:pointer;overflow:hidden}.item-completed[data-v-0d1f05f6]{opacity:.7}.item-completed h4[data-v-0d1f05f6]{text-decoration:line-through}.completed-badge[data-v-0d1f05f6]{color:#a0d8b3;font-style:italic}.tracker-header[data-v-0d1f05f6]{padding:15px;display:flex;justify-content:space-between;align-items:center}.tracker-header h4[data-v-0d1f05f6]{margin:0}.expand-icon[data-v-0d1f05f6]{font-size:12px;opacity:.7}.header-right[data-v-0d1f05f6]{display:flex;align-items:center;gap:15px}.header-date[data-v-0d1f05f6]{font-size:14px;font-weight:700}.tracker-details[data-v-0d1f05f6]{padding:0 15px 15px 15px;display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid hsla(0,0%,100%,.1);margin-top:5px;padding-top:15px}.tracker-item:nth-child(odd) .tracker-details[data-v-0d1f05f6]{border-top:1px solid rgba(0,0,0,.1)}.tracker-details p[data-v-0d1f05f6]{margin:0;font-size:14px;line-height:1.6}.tracker-item[data-v-0d1f05f6]:nth-child(odd){background:#f9f9f9;color:#17533c}.tracker-item[data-v-0d1f05f6]:hover{box-shadow:0 4px 8px rgba(0,0,0,.2)}.overdue[data-v-0d1f05f6]{color:#d9534f;font-weight:700}.tracker-actions[data-v-0d1f05f6]{display:flex;flex-direction:column;gap:8px}.tracker-secondary-actions[data-v-0d1f05f6]{display:flex;gap:8px}.tracker-secondary-actions .btn[data-v-0d1f05f6]{flex:1}.btn-complete[data-v-0d1f05f6]{background-color:#28a745;color:#fff;width:100%}.btn-complete[data-v-0d1f05f6]:hover{background-color:#218838}.btn[data-v-0d1f05f6]{padding:8px 12px;border:none;border-radius:4px;cursor:pointer;font-weight:700}.btn-edit[data-v-0d1f05f6]{background-color:#f0ad4e;color:#fff}.btn-edit[data-v-0d1f05f6]:hover{background-color:#ec971f}.btn-delete[data-v-0d1f05f6]{background-color:#d9534f;color:#fff}.btn-delete[data-v-0d1f05f6]:hover{background-color:#c9302c}.empty[data-v-0d1f05f6],.loading[data-v-0d1f05f6]{padding:20px;text-align:center;font-weight:700}h3[data-v-cad31266]{margin:40px 0 0}ul[data-v-cad31266]{list-style-type:none;padding:0}.li-inline[data-v-cad31266]{display:inline-block;margin:0 10px}a[data-v-cad31266]{color:#2c3e50}a[data-v-cad31266]:focus,a[data-v-cad31266]:hover{color:#a15abd}.home-container[data-v-cad31266]{background-color:rgba(220,255,239,.8);padding:20px;padding-bottom:50px}.todo-list[data-v-cad31266]{margin:auto;width:60%}.todo-list li[data-v-cad31266]{text-align:left;cursor:pointer;position:relative;padding:12px 8px 12px 40px;background:#17533c;color:#fff;transition:.2s}.todo-list li[data-v-cad31266]:nth-child(odd){background:#f9f9f9;color:#17533c}.todo-list li[data-v-cad31266]:hover{background:#ddd}.file-uploader[data-v-3b828b2e]{height:300px}pre code[data-v-3b828b2e]{white-space:pre}.file_path[data-v-b260b484]{margin-top:90px}.tracker-page[data-v-846ce842]{margin:0 auto;width:100%}.tracker-header-title[data-v-846ce842]{text-align:center;margin-bottom:20px}.tracker-content[data-v-846ce842]{display:grid;grid-template-columns:1fr;gap:15px}@media(min-width:1000px){.tracker-content[data-v-846ce842]{grid-template-columns:350px 1fr}}.add-action[data-v-846ce842]{display:flex;justify-content:flex-end;margin-bottom:20px}.btn[data-v-846ce842]{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-weight:700;font-size:16px}.btn-primary[data-v-846ce842]{background-color:#28a745;color:#fff}.btn-primary[data-v-846ce842]:hover{background-color:#218838}.btn-secondary[data-v-846ce842]{background-color:#6c757d;color:#fff}.btn-secondary[data-v-846ce842]:hover{background-color:#5a6268}.divider[data-v-846ce842]{margin:40px 0;border:0;border-top:1px solid #ccc}.calendar-section[data-v-846ce842]{text-align:center}.calendar-wrapper[data-v-846ce842]{display:block;width:100%;background:#fff;padding:20px;border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,.05)}.calendar-wrapper[data-v-846ce842] .vc-container{width:100%;min-height:400px}.calendar-wrapper[data-v-846ce842] .vc-pane{width:100%}.calendar-wrapper[data-v-846ce842] .vc-title{color:#fff;font-size:1.1rem;font-weight:700;padding:0 10px 0 10px}.calendar-wrapper[data-v-846ce842] .vc-arrow{color:#fff}.calendar-wrapper[data-v-846ce842] .vc-day{min-height:80px;border:1px solid #e2e8f0}.calendar-wrapper[data-v-846ce842] .vc-day-content{font-size:1.2rem;font-weight:500;width:100%;height:100%}.modal-overlay[data-v-846ce842]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-846ce842]{background:#fff;padding:30px;border-radius:8px;width:90%;max-width:400px;color:#333}.form-group[data-v-846ce842]{margin-bottom:15px;text-align:left}.form-group label[data-v-846ce842]{display:block;font-weight:700;margin-bottom:5px}.form-group input[data-v-846ce842]:not([type=checkbox]),.form-group select[data-v-846ce842]{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px;box-sizing:border-box}.checkbox-label[data-v-846ce842]{display:flex!important;align-items:center;gap:8px;font-weight:400!important;cursor:pointer}.checkbox-label input[type=checkbox][data-v-846ce842]{width:auto;margin:0;cursor:pointer}.recurrence-inputs[data-v-846ce842]{display:flex;gap:10px}.radio-group[data-v-846ce842]{display:flex;gap:15px;margin-top:5px}.radio-label[data-v-846ce842]{display:flex!important;align-items:center;gap:8px;font-weight:400!important;cursor:pointer}.radio-label input[type=radio][data-v-846ce842]{width:auto;margin:0;cursor:pointer}.modal-actions[data-v-846ce842]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.admin-page[data-v-58d79d80]{padding:20px;max-width:800px;margin:0 auto}.users-table[data-v-58d79d80]{width:100%;border-collapse:collapse;margin-top:20px;background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 4px 6px rgba(0,0,0,.1)}.users-table td[data-v-58d79d80],.users-table th[data-v-58d79d80]{padding:15px;text-align:left;border-bottom:1px solid #ddd}.users-table th[data-v-58d79d80]{background-color:#17533c;color:#fff}.users-table td[data-v-58d79d80]{color:#333}.users-table tr[data-v-58d79d80]:hover{background-color:#f1f1f1}.role-select[data-v-58d79d80]{padding:8px;border-radius:4px;border:1px solid #ccc}.btn[data-v-58d79d80]{padding:8px 12px;border:none;border-radius:4px;cursor:pointer;font-weight:700}.btn-save[data-v-58d79d80]{background-color:#007bff;color:#fff}.btn-save[data-v-58d79d80]:hover{background-color:#0056b3}.loading[data-v-58d79d80]{font-size:1.2em;font-weight:700}.ereader-wrapper[data-v-6856335d]{padding:20px;min-height:100vh}.loading-state[data-v-6856335d]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;color:#31084d}.loading-state .spinner[data-v-6856335d]{border:4px solid rgba(0,0,0,.1);border-top:4px solid #264426;border-radius:50%;width:40px;height:40px;animation:spin-6856335d 1s linear infinite;margin-bottom:15px}@keyframes spin-6856335d{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.empty-state[data-v-6856335d]{text-align:center;padding:60px 20px;color:#31084d}.empty-state h2[data-v-6856335d]{font-size:2rem;margin-bottom:10px}.empty-state p[data-v-6856335d]{opacity:.8}.book-grid[data-v-6856335d]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;padding:20px 0}.book-card[data-v-6856335d]{position:relative;background:hsla(0,0%,100%,.05);border-radius:12px;overflow:hidden;box-shadow:0 4px 15px rgba(0,0,0,.2);transition:transform .3s ease,box-shadow .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.1);display:flex;flex-direction:column;min-height:300px}.book-card[data-v-6856335d]:hover{transform:translateY(-5px);box-shadow:0 8px 25px rgba(0,0,0,.3)}.book-card:hover .card-actions[data-v-6856335d]{opacity:1}.card-content[data-v-6856335d]{cursor:pointer;height:100%;display:flex;flex-direction:column}.book-cover[data-v-6856335d]{height:180px;display:flex;align-items:center;justify-content:center;padding:20px;text-align:center}.book-cover h3[data-v-6856335d]{color:#fff;font-size:1.25rem;text-shadow:0 2px 4px rgba(0,0,0,.5);margin:0;line-height:1.4}.book-info[data-v-6856335d]{padding:15px;flex-grow:1;display:flex;flex-direction:column;justify-content:space-between}.book-info .last-read[data-v-6856335d]{font-size:.85rem;color:#31084d;opacity:.8}.card-actions[data-v-6856335d]{position:absolute;top:10px;right:10px;display:flex;gap:8px;opacity:0;transition:opacity .3s ease}.icon-btn[data-v-6856335d]{background:rgba(0,0,0,.6);border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}.icon-btn img[data-v-6856335d]{width:16px;height:16px;filter:invert(1)}.icon-btn[data-v-6856335d]:hover{background:#264426}.icon-btn.delete-btn[data-v-6856335d]:hover{background:#e74c3c}.edit-overlay[data-v-6856335d]{padding:15px;display:flex;flex-direction:column;gap:10px;height:100%;background:rgba(0,0,0,.4)}.edit-overlay input[data-v-6856335d]{width:100%;padding:8px;border:1px solid hsla(0,0%,100%,.2);border-radius:6px;background:rgba(0,0,0,.3);color:#fff;font-size:.9rem}.edit-overlay input[data-v-6856335d]:focus{outline:none;border-color:#264426}.edit-actions[data-v-6856335d]{display:flex;gap:10px;margin-top:auto}.edit-actions .action-btn[data-v-6856335d]{flex:1;padding:8px;border:none;border-radius:6px;cursor:pointer;font-weight:600}.edit-actions .action-btn.success[data-v-6856335d]{background:#264426;color:#fff}.edit-actions .action-btn.cancel[data-v-6856335d]{background:transparent;border:1px solid hsla(0,0%,100%,.3);color:#fff}.fab[data-v-6856335d]{position:fixed;bottom:40px;right:40px;width:60px;height:60px;border-radius:50%;background:#264426;color:#fff;border:none;box-shadow:0 4px 15px rgba(0,0,0,.3);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .3s ease,background .3s ease;z-index:100}.fab .fab-icon[data-v-6856335d]{font-size:32px;line-height:1;margin-top:-4px}.fab[data-v-6856335d]:hover{transform:scale(1.1) rotate(90deg);background:#386538}.modal-overlay[data-v-6856335d]{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content[data-v-6856335d]{background:rgba(30,30,30,.95);border:1px solid hsla(0,0%,100%,.1);padding:30px;border-radius:16px;box-shadow:0 10px 40px rgba(0,0,0,.5);max-width:450px;width:90%;color:#31084d}.modal-content h2[data-v-6856335d]{margin-top:0;margin-bottom:25px;font-size:1.75rem;color:#fff}.input-group[data-v-6856335d]{margin-bottom:15px}.input-group label[data-v-6856335d]{display:block;font-size:.9rem;margin-bottom:5px;color:hsla(0,0%,100%,.8)}.input-group input[data-v-6856335d]{width:100%;padding:12px;border-radius:8px;border:1px solid hsla(0,0%,100%,.2);background:rgba(0,0,0,.3);color:#fff;font-size:1rem;box-sizing:border-box}.input-group input[data-v-6856335d]:focus{outline:none;border-color:#264426}.input-group input.error-border[data-v-6856335d]{border-color:#e74c3c}.modal-actions[data-v-6856335d]{display:flex;justify-content:flex-end;gap:15px;margin-top:30px}.modal-actions button[data-v-6856335d]{padding:10px 20px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;border:none;transition:background .2s}.modal-actions .btn-cancel[data-v-6856335d]{background:transparent;color:hsla(0,0%,100%,.7)}.modal-actions .btn-cancel[data-v-6856335d]:hover{background:hsla(0,0%,100%,.1)}.modal-actions .btn-primary[data-v-6856335d]{background:#264426;color:#fff}.modal-actions .btn-primary[data-v-6856335d]:hover{background:#386538}.pagination-controls[data-v-6856335d]{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:40px}.pagination-controls .pill-btn[data-v-6856335d]{padding:8px 24px;border-radius:20px;border:none;background:#264426;color:#fff;font-weight:700;cursor:pointer;transition:background .2s}.pagination-controls .pill-btn[data-v-6856335d]:disabled{background:rgba(0,0,0,.1);color:rgba(0,0,0,.3);cursor:not-allowed}.pagination-controls .pill-btn[data-v-6856335d]:not(:disabled):hover{background:#386538}.pagination-controls .page-indicator[data-v-6856335d]{color:#31084d;font-weight:500}.reader-wrapper[data-v-e1ba9aba]{padding:20px;max-width:1200px;margin:0 auto;height:100vh;display:flex;flex-direction:column}.reader-container[data-v-e1ba9aba]{display:flex;flex-direction:column;flex:1}.reader-header[data-v-e1ba9aba]{display:flex;flex-direction:column;align-items:center;margin-bottom:20px}.reader-header h2[data-v-e1ba9aba]{color:#31084d;font-size:1.5rem;margin:0 0 15px 0}.action-buttons[data-v-e1ba9aba]{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.action-buttons .btn[data-v-e1ba9aba]{padding:8px 16px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.action-buttons .btn.primary[data-v-e1ba9aba]{background:#264426;color:#fff}.action-buttons .btn.primary[data-v-e1ba9aba]:hover{background:#386538;transform:translateY(-2px)}.action-buttons .btn.outline[data-v-e1ba9aba]{background:transparent;color:#31084d;border:1px solid rgba(0,0,0,.2)}.action-buttons .btn.outline[data-v-e1ba9aba]:hover{background:rgba(0,0,0,.05)}.content-area[data-v-e1ba9aba]{flex:1;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.3);position:relative;display:flex;flex-direction:column}.iframe-container[data-v-e1ba9aba]{flex:1}.iframe-container iframe[data-v-e1ba9aba]{width:100%;height:100%;border:none;display:block}.loading-state[data-v-e1ba9aba]{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#31084d}.loading-state.full-height[data-v-e1ba9aba]{position:absolute;top:0;left:0;right:0;bottom:0;background:hsla(0,0%,100%,.9);z-index:10;color:#333}.loading-state.full-height .spinner[data-v-e1ba9aba]{border-top-color:#264426;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.1) #264426}.loading-state .spinner[data-v-e1ba9aba]{border:4px solid rgba(0,0,0,.1);border-top:4px solid #264426;border-radius:50%;width:40px;height:40px;animation:spin-e1ba9aba 1s linear infinite;margin-bottom:15px}@keyframes spin-e1ba9aba{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.toast-container[data-v-e1ba9aba]{position:fixed;bottom:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast[data-v-e1ba9aba]{background:rgba(40,40,40,.95);color:#fff;padding:12px 20px;border-radius:8px;box-shadow:0 4px 15px rgba(0,0,0,.2);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-left:4px solid #aaa;font-size:.9rem}.toast.log-info[data-v-e1ba9aba]{border-left-color:#3498db}.toast.log-success[data-v-e1ba9aba]{border-left-color:#2ecc71}.toast.log-error[data-v-e1ba9aba]{border-left-color:#e74c3c}.toast.log-warning[data-v-e1ba9aba]{border-left-color:#f1c40f}.toast-enter-active[data-v-e1ba9aba],.toast-leave-active[data-v-e1ba9aba]{transition:all .3s ease}.toast-enter-from[data-v-e1ba9aba]{opacity:0;transform:translateX(30px)}.toast-leave-to[data-v-e1ba9aba]{opacity:0;transform:translateY(-20px)}.modal-overlay[data-v-e1ba9aba]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content.logs-modal[data-v-e1ba9aba]{background:rgba(30,30,30,.95);border:1px solid hsla(0,0%,100%,.1);padding:20px;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.5);width:90%;max-width:500px;max-height:80vh;display:flex;flex-direction:column}.modal-header[data-v-e1ba9aba]{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid hsla(0,0%,100%,.1);padding-bottom:15px;margin-bottom:15px}.modal-header h3[data-v-e1ba9aba]{margin:0;color:#fff}.modal-header .close-btn[data-v-e1ba9aba]{background:transparent;border:none;color:#fff;font-size:1.5rem;cursor:pointer;line-height:1}.modal-header .close-btn[data-v-e1ba9aba]:hover{color:#264426}.logs-list[data-v-e1ba9aba]{overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:10px}.log-item[data-v-e1ba9aba]{display:flex;flex-direction:column;padding:10px;border-radius:8px;background:hsla(0,0%,100%,.05);color:#ddd;font-size:.9rem;border-left:3px solid #aaa}.log-item.log-info[data-v-e1ba9aba]{border-left-color:#3498db}.log-item.log-success[data-v-e1ba9aba]{border-left-color:#2ecc71}.log-item.log-error[data-v-e1ba9aba]{border-left-color:#e74c3c}.log-item.log-warning[data-v-e1ba9aba]{border-left-color:#f1c40f}.log-item .time[data-v-e1ba9aba]{font-size:.75rem;color:#888;margin-bottom:4px}.empty-logs[data-v-e1ba9aba]{text-align:center;color:#888;padding:20px}.schedule[data-v-0bf2faab]{margin-top:20px;display:flex;align-items:left;justify-content:center;gap:2px;flex-wrap:wrap}.day[data-v-0bf2faab]{text-align:center;padding:5px;border:1px solid #12682e;font-weight:600;color:#12682e}.date[data-v-0bf2faab]{color:#12682e;font-size:14px}.day img[data-v-0bf2faab]{width:100px;height:55px}.highlight[data-v-0bf2faab]{background-color:green;color:#fff;font-weight:700}hr{height:1px;background-color:#104d24;border:none;margin:20px 0 10px 0}pre{background-color:#f8f8f8;padding:1em;height:100%;white-space:normal!important;word-wrap:break-word!important}.log-success{color:green}.log-error{color:red;font-style:italic}.log-info{color:blue}button{background-color:#104d24;color:#fff;font-weight:600;border-radius:2px;padding:10px;border-radius:4px;border:1px solid #fff}button:focus,button:hover{cursor:pointer;background-color:#a15abd}.label{margin-right:10px;color:rgba(170,248,213,.863);font-weight:600}input{padding:5px 10px;border-radius:4px;border:1px solid #86b373;color:#31084d;background-color:#d6ffed}.error{font-size:small;color:red}