.login-wrapper{display:flex;justify-content:center;min-height:40vh;padding:40px 20px}.login-box{max-width:500px;width:100%;background:#fff;border-radius:12px;padding:30px;box-shadow:0 8px 24px rgba(0,0,0,.2);font-family:'Segoe UI',sans-serif}body .gpnf-modal .gform_wrapper{font-size:0.75rem!important}body .gpnf-modal .gform_wrapper .gfield_label,body .gpnf-modal .gform_wrapper input,body .gpnf-modal .gform_wrapper select,body .gpnf-modal .gform_wrapper textarea{font-size:0.7rem!important}.gpnf-modal .gform_wrapper{font-size:.7rem;line-height:1.4}.gpnf-modal .gform_wrapper .gfield_label{font-size:.75rem;font-weight:500;margin-bottom:.25rem}.gpnf-modal .gform_wrapper input,.gpnf-modal .gform_wrapper select,.gpnf-modal .gform_wrapper textarea{font-size:.7rem}.gpnf-modal .gform_wrapper .gfield_radio li label,.gpnf-modal .gform_wrapper .gfield_checkbox li label{font-size:.75rem}.gpnf-modal .gform_wrapper .gform_footer input[type=submit]{font-size:.7rem}.gpnf-modal .gform_wrapper{font-family:system-ui,sans-serif;font-size:.7rem;color:#222}.gpnf-modal .gform_wrapper .gfield_label{font-size:.85rem;font-weight:600;margin-bottom:.25rem;color:#070707}.gpnf-modal .gform_wrapper input[type="text"],.gpnf-modal .gform_wrapper input[type="email"],.gpnf-modal .gform_wrapper input[type="number"],.gpnf-modal .gform_wrapper input[type="password"],.gpnf-modal .gform_wrapper textarea{width:100%!important;border-radius:6px;padding:.65rem;font-size:.7rem;border:1px solid #ccc;color:#222;background-color:#fff}.gpnf-modal .gform_wrapper select{width:100%!important;border-radius:6px;padding:.6rem;font-size:.7rem;border:1px solid #ccc;color:#222!important;background-color:#fff!important}.gpnf-modal .gform_wrapper select option{color:#222;background-color:#fff}.gpnf-modal .gform_wrapper .gf_placeholder{color:#888!important}.gpnf-modal .gform_wrapper input[type="radio"],.gpnf-modal .gform_wrapper input[type="checkbox"]{accent-color:#0073e6;width:16px;height:16px;cursor:pointer}.gpnf-modal .gform_wrapper .gform_footer input[type=submit]{background:#0073e6;color:#fff;border:none;border-radius:6px;padding:.8rem 1rem;font-size:.7rem;cursor:pointer;width:100%;transition:background 0.2s ease}.gpnf-modal .gform_wrapper .gform_footer input[type=submit]:hover{background:#005bb5}.gpnf-nested-entries{font-size:.75rem;border-collapse:collapse;width:100%}.gpnf-nested-entries th{font-size:0.75rem!important;font-weight:500;color:#333;padding:.4rem .7rem;border-bottom:1px solid #ddd;text-align:left}.gpnf-nested-entries td{font-size:0.7rem!important;padding:.4rem .6rem;border-bottom:1px solid #eee;color:#222}.gpnf-nested-entries .gpnf-row-actions a{font-size:0.75rem!important;color:#0073e6;margin-right:.5rem;text-decoration:none}.gpnf-nested-entries .gpnf-row-actions a:hover{text-decoration:underline}@media (max-width:768px){.gpnf-nested-entries{font-size:.8rem}.gpnf-nested-entries th{font-size:0.85rem!important}.gpnf-nested-entries td{font-size:0.85rem!important}.gpnf-nested-entries .gpnf-row-actions a{font-size:0.8rem!important}}.open-modal-btn{display:inline-block;margin:.5rem .5rem 1rem 0;padding:.6rem 1rem;background:#0073e6;color:#ffffff!important;border-radius:6px;text-decoration:none;font-size:.9rem}.open-modal-btn[data-modal="daily"]{background:#28a745;color:#ffffff!important}.open-modal-btn:hover{opacity:.9}.shared-modal{display:none;position:fixed;z-index:9999;left:0;top:0;width:100%;height:100%;overflow:auto;background:rgba(0,0,0,.6)}.shared-modal-content{background:#fff;margin:5% auto;padding:1rem;border-radius:8px;width:90%;max-width:900px;font-size:.75rem;line-height:1.3}.shared-modal-close{float:right;font-size:1.5rem;font-weight:700;cursor:pointer}.shared-modal-content table{width:100%;border-collapse:collapse;margin-top:1rem}.shared-modal-content th,.shared-modal-content td{border:1px solid #ddd;padding:.4rem .6rem;text-align:left;font-size:.75rem}.shared-modal-content th{background:#f5f5f5;font-weight:600}.daily-entries-table{width:100%;border-collapse:collapse;font-size:.8rem}.daily-entries-table th,.daily-entries-table td{border:1px solid #ddd;padding:.5rem;text-align:left}.daily-entries-table th{background:#f5f5f5;font-weight:600}.nested-tasks{margin:0;padding-left:1rem;list-style:disc}.daily-log-entry h3{margin-top:0;font-size:1rem}.daily-log-entry .parent-fields,.daily-log-entry .nested-tasks{margin:.5rem 0;padding-left:1.2rem;font-size:.85rem}.nested-child-table{width:100%;border-collapse:collapse;margin:.5rem 0;font-size:.85rem}.nested-child-table th,.nested-child-table td{border:1px solid #ddd;padding:.4rem .6rem;text-align:left}.nested-child-table th{background:#f5f5f5;font-weight:600}@media (max-width:768px){.daily-entries-table{font-size:.9rem}}@media (max-width:768px){.shared-modal-content{font-size:.9rem}.shared-modal-content th,.shared-modal-content td{font-size:.9rem;padding:.5rem}}.modal-hidden{display:none}.nested-child-table{width:100%;border-collapse:collapse;margin:.5rem 0;font-size:.85rem}.nested-child-table th,.nested-child-table td{border:1px solid #ddd;padding:.4rem .6rem;text-align:left}.nested-child-table th{background:#f5f5f5;font-weight:600}#gform_wrapper_111,.login-box{background:#fff;border-radius:12px;padding:2rem;max-width:500px;width:100%;margin:2rem auto;box-shadow:0 4px 12px rgba(0,0,0,.08);display:block}#gform_wrapper_111{margin:2rem auto!important;padding:2rem!important;background:#fff!important;box-shadow:0 4px 12px rgba(0,0,0,.08)!important;border-radius:12px!important}#gform_wrapper_111 h2.gform_title,.login-box .login-title{font-size:1.6rem;font-weight:600;margin-bottom:1rem;color:#004aad;text-align:center}#gform_wrapper_111 input[type="text"],#gform_wrapper_111 input[type="email"],#gform_wrapper_111 input[type="password"],#gform_wrapper_111 select,#gform_wrapper_111 textarea,.login-box input[type="text"],.login-box input[type="password"]{width:100%;padding:.75rem;border-radius:8px;border:1px solid #ccc;font-size:1rem;margin-bottom:1rem;box-sizing:border-box;transition:border-color 0.2s ease,box-shadow 0.2s ease}#gform_wrapper_111 input:focus,#gform_wrapper_111 select:focus,#gform_wrapper_111 textarea:focus,.login-box input:focus{border-color:#0073e6;box-shadow:0 0 0 3px rgba(0,115,230,.15);outline:none}#gform_wrapper_111 .gform_footer input[type=submit],.login-box input[type="submit"]{background:linear-gradient(135deg,#0073e6,#005bb5);color:#fff;border:none;border-radius:8px;padding:.9rem 1.2rem;font-size:1rem;cursor:pointer;width:100%;transition:background 0.2s ease,transform 0.1s ease}#gform_wrapper_111 .gform_footer input[type=submit]:hover,.login-box input[type="submit"]:hover{background:linear-gradient(135deg,#005bb5,#004494);transform:translateY(-1px)}@media (max-width:768px){#gform_wrapper_111,.login-box{max-width:90%;padding:1.5rem}}@media (max-width:480px){#gform_wrapper_111,.login-box{max-width:95%;padding:1rem}}#gform_wrapper_112{background:#fff;border-radius:12px;padding:2rem;max-width:500px;width:100%;margin:2rem auto;box-shadow:0 4px 12px rgba(0,0,0,.08);display:block}#gform_wrapper_112 h2.gform_title{font-size:1.6rem;font-weight:600;margin-bottom:1rem;color:#004aad;text-align:center}#gform_wrapper_112 .gfield_label{font-weight:600;font-size:.95rem;margin-bottom:.25rem;display:block;color:#333}#gform_wrapper_112 input[type="password"]{width:100%;padding:.75rem;border-radius:8px;border:1px solid #ccc;font-size:1rem;margin-bottom:1rem;box-sizing:border-box;transition:border-color 0.2s ease,box-shadow 0.2s ease}#gform_wrapper_112 input[type="password"]:focus{border-color:#0073e6;box-shadow:0 0 0 3px rgba(0,115,230,.15);outline:none}#gform_wrapper_112 .gform_footer input[type=submit]{background:linear-gradient(135deg,#0073e6,#005bb5);color:#fff;border:none;border-radius:8px;padding:.9rem 1.2rem;font-size:1rem;cursor:pointer;width:100%;transition:background 0.2s ease,transform 0.1s ease}#gform_wrapper_112 .gform_footer input[type=submit]:hover{background:linear-gradient(135deg,#005bb5,#004494);transform:translateY(-1px)}@media (max-width:768px){#gform_wrapper_112{max-width:90%;padding:1.5rem}#gform_wrapper_112 h2.gform_title{font-size:1.4rem}}@media (max-width:480px){#gform_wrapper_112{max-width:95%;padding:1rem}#gform_wrapper_112 h2.gform_title{font-size:1.2rem}#gform_wrapper_112 input[type="password"],#gform_wrapper_112 .gform_footer input[type=submit]{font-size:.95rem;padding:.65rem}}.daily-log-entry-button{font-size:.8rem;padding:4px 8px;border-radius:3px}.daily-log-entry-button:hover{background-color:#1264A0;color:#ffffff!important}.daily-log-entry small{font-size:.75em;color:#666;margin-left:.5em}.modal{display:none;position:fixed;z-index:9999;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.6);overflow:auto}.modal.show{display:block}.modal-content{background:#fff;margin:5% auto;padding:1rem;border-radius:6px;max-width:600px;width:90%}.modal-close{float:right;font-size:1.5rem;cursor:pointer}@media (max-width:480px){.modal-content{width:95%;padding:.75rem}}.my-log-entries,.admin-log-entries{background:#f9fcff;border-left:4px solid #0073aa;padding:1rem;margin-top:2rem;border-radius:6px}.my-log-entries ul,.admin-log-entries ul{list-style:none;padding-left:0}.my-log-entries li,.admin-log-entries li{margin-bottom:.5rem}.logged-in-banner{background-color:#FFF;padding:.75rem 1rem;margin-bottom:1rem;border-left:4px solid #0073aa;font-size:.95rem;display:flex;justify-content:space-between;align-items:center}.logout-link{color:#0073aa;text-decoration:underline;font-weight:700}.logout-link:hover{text-decoration:none}.portal-menu{background:#222;padding:.5rem 1rem;display:flex;gap:1rem}.portal-menu a{color:#fff;text-decoration:none;font-weight:700}.portal-menu a:hover{text-decoration:underline}.ip-modal{display:none;position:fixed;z-index:9999;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,.6)}.ip-modal-content{background:#fff;margin:5% auto;padding:1rem;border-radius:8px;width:90%;max-width:600px;box-shadow:0 4px 12px rgba(0,0,0,.3)}.ip-modal-close{float:right;font-size:1.5rem;font-weight:700;cursor:pointer}.ip-details{display:grid;grid-template-columns:120px 1fr;gap:.5rem 1rem;margin:0}.ip-details dt{font-weight:700;color:#004080}.ip-details dd{margin:0;color:#333;word-break:break-word}.ip-details div{display:contents}.portal-ip-manager .remove-ip-btn,.portal-ip-manager .add-ip-btn,.portal-ip-manager button[type="submit"]{font-size:9px;padding:2px 4px;line-height:1.2;border-radius:2px;margin-left:4px;cursor:pointer;border:none}.portal-ip-manager .remove-ip-btn{background:#e74c3c;color:#fff}.portal-ip-manager .remove-ip-btn:hover{background:#c0392b}.portal-ip-manager .add-ip-btn{background:#2ecc71;color:#fff}.portal-ip-manager .add-ip-btn:hover{background:#27ae60}.copy-ip-btn{margin-left:.5rem;padding:.25rem .5rem;font-size:.75rem;border:none;border-radius:4px;background:#0073e6;color:#fff;cursor:pointer;transition:background 0.2s ease}.copy-ip-btn:hover{background:#005bb5}.copy-ip-btn.copied{background:#28a745}.allowed-ip-list{list-style:none;padding:0;margin:0 0 1rem 0}.allowed-ip-list li{display:flex;align-items:center;justify-content:space-between;background:#f9f9f9;border:1px solid #ddd;padding:.5rem .75rem;margin-bottom:.5rem;border-radius:4px}.portal-badge{display:inline-block;padding:.25rem .5rem;font-size:.8rem;font-weight:600;border-radius:4px;color:#fff;text-transform:uppercase;letter-spacing:.5px}.badge-red{background:#d9534f}.badge-orange{background:#f0ad4e}.badge-purple{background:#6f42c1}.badge-gray{background:#6c757d}.badge-blue{background:#0073e6}.badge-darkred{background:#8b0000}.portal-ip-manager{max-width:1200px;margin:1.5rem auto;padding:1.5rem;background:#fff;border-radius:10px;box-shadow:0 4px 12px rgba(0,0,0,.08);font-family:system-ui,sans-serif;color:#333}.portal-ip-manager h2{font-size:1.3rem;margin-top:1.5rem;margin-bottom:.75rem;color:#004080;border-bottom:2px solid #e6e6e6;padding-bottom:.25rem}.portal-ip-manager textarea{width:100%;padding:.75rem;font-size:.95rem;border:1px solid #ccc;border-radius:6px;margin-bottom:1rem;font-family:monospace;box-sizing:border-box}.portal-ip-manager .button,.portal-ip-manager input[type="submit"]{padding:.6rem 1rem;font-size:.95rem;border-radius:6px;border:none;cursor:pointer;transition:background 0.2s ease}.portal-ip-manager .button-primary{background:#0073e6;color:#fff}.portal-ip-manager .button-primary:hover{background:#005bb5}.portal-ip-manager .button-secondary{background:#f0f0f0;color:#333}.portal-ip-manager .button-secondary:hover{background:#e0e0e0}.portal-ip-manager .updated{background:#e6f7e6;border:1px solid #b3e6b3;color:#267326;padding:.75rem;border-radius:6px;margin-bottom:1rem}.portal-ip-manager .error{background:#ffecec;border:1px solid #f5c2c2;color:#b30000;padding:.75rem;border-radius:6px;margin-bottom:1rem}.portal-ip-manager .logs-fullwidth{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:1rem}.portal-ip-manager .logs-fullwidth table{width:100%;border-collapse:collapse;font-size:.9rem;background:#fafafa;border-radius:6px;min-width:600px}.portal-ip-manager .logs-fullwidth th{background:#0073e6;color:#fff;text-align:left;padding:.6rem;white-space:nowrap}.portal-ip-manager .logs-fullwidth td{padding:.6rem;border-bottom:1px solid #ddd}.portal-ip-manager .logs-fullwidth tr:nth-child(even) td{background:#f9f9f9}@media (max-width:600px){.portal-ip-manager{margin:1rem;padding:1rem}.portal-ip-manager h2{font-size:1.1rem}.portal-ip-manager .button,.portal-ip-manager input[type="submit"]{width:100%;margin:.25rem 0}.portal-ip-manager .logs-fullwidth table{font-size:.8rem}.portal-ip-manager .logs-fullwidth th,.portal-ip-manager .logs-fullwidth td{padding:.4rem}.portal-ip-manager .logs-fullwidth table,.portal-ip-manager .logs-fullwidth thead,.portal-ip-manager .logs-fullwidth tbody,.portal-ip-manager .logs-fullwidth th,.portal-ip-manager .logs-fullwidth td,.portal-ip-manager .logs-fullwidth tr{display:block;width:100%}.portal-ip-manager .logs-fullwidth thead{display:none}.portal-ip-manager .logs-fullwidth tr{margin-bottom:1rem;border:1px solid #ddd;border-radius:6px;background:#fff;padding:.5rem}.portal-ip-manager .logs-fullwidth td{border:none;position:relative;padding-left:50%;text-align:left;white-space:normal}.portal-ip-manager .logs-fullwidth td::before{content:attr(data-label);position:absolute;left:.75rem;top:.5rem;font-weight:700;color:#004080;white-space:nowrap}}