html,body,#root{height:100vh;margin:0;padding:0;width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}#root{height:100vh}.app-container{height:100%}@media (max-width: 1200px){.app-container{margin:0 auto}}.fullscreen-prompt{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000e6;display:flex;justify-content:center;align-items:center;z-index:9999;color:#fff}.prompt-content{text-align:center;max-width:500px;padding:2rem;background:#1a1a1a;border-radius:8px;box-shadow:0 0 20px #00000080}.prompt-content h2{color:#61dafb;margin-bottom:1rem}.prompt-content button{background:#61dafb;color:#282c34;border:none;padding:10px 20px;font-size:1rem;border-radius:4px;cursor:pointer;margin-top:1rem;transition:all .3s}.prompt-content button:hover{background:#4fa8d3}.webgazer-toggle-container{display:flex;align-items:center;gap:10px;font-size:14px;color:#333}.webgazer-toggle-container label{color:#010101}.switch{position:relative;display:inline-block;width:44px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;transition:.4s}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s}input:checked+.slider{background-color:#2196f3}input:checked+.slider:before{transform:translate(20px)}.slider.round{border-radius:24px}.slider.round:before{border-radius:50%}.login-container{width:450px;height:100%;background-color:#fff;border-radius:20px;text-align:center;margin:-30px auto auto;display:flex;justify-content:center;align-items:center}.login-title{color:#3498db;font-size:28px;margin-bottom:70px;font-weight:400;font-weight:700}.input-group{margin-bottom:10px;text-align:left}.login-form label{display:block;color:#333;margin-bottom:8px;font-size:.8em;text-align:end}#inviteCode{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px;box-sizing:border-box}.login-button{width:100%;padding:12px;background-color:#eee;color:#333;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}.login-button:hover{background-color:#e0e0e0}.login-button:disabled{background-color:#ccc;cursor:not-allowed}.login-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.login-modal{background-color:#fff;border-radius:8px;width:80%;max-width:400px;overflow:hidden;animation:modalFadeIn .3s ease-out}.login-modal-header{padding:16px 24px;background-color:#fff;color:#fff}.login-modal-header h3{margin:0;font-size:18px;color:#2980b9}.login-modal-content{padding:24px;font-size:16px;line-height:1.5}.login-modal-footer{padding:16px 24px;display:flex;justify-content:flex-end;border-top:1px solid #eee}.login-modal-confirm{padding:8px 16px;background-color:#2980b9;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .3s}.login-modal-confirm:hover{background-color:#c0392b}.toast-message{position:fixed;top:20px;left:50%;transform:translate(-50%);background-color:#000000b3;color:#fff;padding:10px 20px;border-radius:5px;z-index:1000;opacity:1;transition:opacity .5s ease}.toast-message.fade-out{opacity:0}.crack-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.crack-modal{background-color:#fff;border-radius:8px;width:80%;max-width:400px;animation:modalFadeIn .3s ease-out}.crack-modal-content{padding:24px;font-size:16px;line-height:1.5}.crack-modal-footer{padding:16px 24px;display:flex;justify-content:flex-end;border-top:1px solid #eee}.crack-modal-confirm{padding:8px 16px;background-color:#2980b9;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .3s}.crack-modal-confirm:hover{background-color:#c0392b}.error-message{color:#e74c3c;font-size:14px;margin-top:8px;display:block}.navbar{width:100%;background-color:#e9ecef;padding:10px 20px;border-bottom:1px solid #dee2e6;display:flex;justify-content:center;align-items:center;margin-bottom:20px}.navbar-content{display:flex;gap:15px;align-items:center}.navbar-item{font-weight:700;color:#007bff;font-size:1.1em}.navbar-button{background-color:#007bff;color:#fff;padding:8px 15px;border:none;border-radius:5px;cursor:pointer;font-size:.9em;transition:background-color .3s ease}.navbar-button:hover{background-color:#0056b3}.navbar-button.help-button{background-color:#6c757d}.navbar-button.help-button:hover{background-color:#5a6268}.status-text{font-size:1.2em;color:#555;margin-bottom:20px}.webgazer-canvas{position:absolute;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:10;opacity:.8}.calibration-grid{position:absolute;top:0;left:0;width:100vw;height:100vh;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:0;z-index:20}.calibration-point{width:60px;height:60px;border-radius:50%;background-color:#f0f0f0;border:3px solid #ccc;display:flex;justify-content:center;align-items:center;font-size:1.5em;font-weight:700;color:transparent;cursor:pointer;margin:auto;transition:all .3s ease;box-shadow:0 2px 5px #0000001a}.calibration-point.active{background-color:#007bff;border-color:#0056b3;color:#fff;transform:scale(1.1);box-shadow:0 0 15px #00f9}.calibration-point.completed{background-color:#28a745;border-color:#218838;color:#fff;opacity:.7;cursor:default}.calibration-point:disabled{background-color:#e9ecef;border-color:#ddd;color:#aaa;cursor:not-allowed;opacity:.5}.modal-content{border:none}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background-color:#fff;padding:30px;border-radius:10px;box-shadow:0 5px 15px #0000004d;text-align:center;max-width:900px;width:100%}.modal-content h2{color:#2c3e50;margin-bottom:15px}.modal-content p{color:#666;margin-bottom:25px}.btn-primary,.btn-secondary{padding:10px 20px;border:none;border-radius:5px;cursor:pointer;font-size:1em;margin:0 10px;transition:background-color .3s ease}.btn-primary{background-color:#00f;color:#fff}.btn-primary:hover{background-color:#0000a4}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#5a6268}.calibrationDiv{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:30;pointer-events:auto}.Calibration{width:50px;height:50px;border-radius:50%;opacity:.2;border:2px solid white;cursor:pointer;transition:background-color .1s,opacity .1s;pointer-events:all;position:absolute;transform:translate(-50%,-50%)}.Calibration:hover:not(:disabled){background-color:#1150eea6;opacity:.6}.Calibration:disabled{cursor:not-allowed;border-color:gray}#Pt1{top:15%;left:10%}#Pt2{top:15%;left:50%}#Pt3{top:15%;left:90%}#Pt4{top:50%;left:10%}#Pt5{top:50%;left:50%}#Pt6{top:50%;left:90%}#Pt7{top:92%;left:10%}#Pt8{top:92%;left:50%}#Pt9{top:92%;left:90%}.accuracy-point{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:25px;height:25px;background-color:#e44343;border:2px solid white;border-radius:50%;z-index:9999}.modal.show{display:flex!important;align-items:flex-start!important;justify-content:center!important;padding-top:10vh!important}.modal:focus{outline:none!important}.step-card{border:1px solid #eee;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 4px #0000000d}.step-card ul{list-style-type:none}.modal-title{font-weight:600}.step-card h5{font-weight:700;color:#333}.step-card .bi{margin-right:.75rem;color:#0d6efd;font-size:1.5rem;vertical-align:middle}.modal-body ul{padding-left:1.5rem}.modal-body li{margin-bottom:.5rem}.blog-page-container{background-color:#f4f7f9;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:#333;min-height:100vh}.site-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background-color:#fff;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;position:sticky;top:0;z-index:1000}.header-buttons button{color:#000;margin-left:1rem;background:none;border:1px solid #ccc;padding:.5rem 1rem;border-radius:5px;cursor:pointer;transition:all .2s ease}.header-buttons button:hover{background-color:#f0f0f0;border-color:#aaa}.main-content{max-width:1200px;margin:2rem auto;padding:2rem;background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000014}.articles-grid{display:grid;gap:1.5rem;list-style:none;padding:0;margin:0}.article-card{background-color:#fff;border:1px solid #e9ecef;border-radius:8px;overflow:hidden;box-shadow:0 4px 8px #0000000d;display:flex;flex-direction:row;align-items:center;transition:transform .2s ease,box-shadow .2s ease;cursor:pointer}.card-image{width:180px;height:120px;flex-shrink:0;margin:1rem;border-radius:6px;overflow:hidden}.card-image img{width:100%;height:200px;object-fit:cover;background-color:#eee}.card-content{padding:1.5rem;display:flex;flex-direction:column;flex-grow:1}.card-title{font-size:2rem;font-weight:700;margin:0 0 1rem;line-height:1.3;color:#212529}.refresh-button-container{text-align:center;margin-top:3rem}.refresh-button{font-size:1.5rem;background:none;border:1px solid #ccc;padding:.5rem 1rem;border-radius:5px;cursor:pointer;transition:all .2s ease}.refresh-button:hover:not(:disabled){background-color:#f0f0f0;border-color:#aaa}.refresh-button:disabled{background-color:#6c757d;cursor:not-allowed}.status-container{text-align:center;padding:4rem 2rem;color:#6c757d}.loading-state p{margin-top:1rem;font-size:1.1rem}.spinner{margin:0 auto;width:50px;height:50px;border:5px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:#0d6efd;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-state h3{color:#ed4d42;margin-bottom:1rem}.list-post-meta{font-size:1.5rem;color:#888;text-align:right;margin-top:auto;padding-top:1rem;flex-shrink:0}.list-post-meta span{margin-left:1rem}.blog-page-container{background-color:#f4f7f9;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:#333}.site-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background-color:#fff;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d}.site-title{font-size:1.2rem;font-weight:700}.back-button{background:none;border:1px solid #ccc;padding:.5rem 1rem;border-radius:5px;cursor:pointer;transition:all .2s ease}.back-button:hover{background-color:#f0f0f0;border-color:#aaa}.main-content{max-width:80%;margin:2rem auto;padding:2rem;background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000014}.post-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #eee}.post-title h1,.post-title{font-size:2.8rem;font-weight:700;line-height:1.2;margin:0 0 1rem;color:#1a1a1a}.post-meta{font-size:1.5rem;color:#888}.post-meta span{margin-right:1.5rem}.post-meta a{color:#007bff;text-decoration:none}.post-meta a:hover{text-decoration:underline}.post-feature-image{margin:0 0 2rem}.post-feature-image img{width:100%;height:auto;border-radius:8px}.post-body{font-size:2rem;line-height:1.8;color:#212529}.post-body p{margin-bottom:1.5rem}.post-body a{color:#0d6efd;text-decoration:underline}.post-body h2,.post-body h3{margin-top:2.5rem;margin-bottom:1rem;line-height:1.3}.post-body img{max-width:100%;height:auto;display:block;margin:20px auto}.comment-section{margin-top:40px;padding-top:20px;border-top:1px solid #eee}.comment-section h3{margin-bottom:20px;font-size:2rem;color:#333}.comment{padding:15px;margin-bottom:15px;background-color:#f9f9f9;border-radius:8px;border:1px solid #eaeaea}.comment-content{margin-bottom:10px;font-size:1.5rem;line-height:1.6;color:#444}.comment-meta{font-size:1.5rem;color:#888}.comment-replies{margin-top:15px;padding-left:20px;border-left:2px solid #ddd}.comment-avatar{width:40px;height:40px;margin-right:15px;flex-shrink:0}.after-rendererer-article-content video{max-width:100%;height:auto;background-color:#000;border-radius:8px}.user-center-container{display:flex;flex-direction:column;min-height:100vh;width:100%;max-width:1200px;margin:0 auto}.user-center-header{display:flex;justify-content:space-between;align-items:center;padding:20px 40px;box-sizing:border-box;border-bottom:1px solid #eee;margin-bottom:30px}.user-center-header h1{font-size:24px;margin:0}.header-buttons button{padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px}.save-button{background-color:#1890ff;color:#fff;border:none;height:40px}.back-button{background-color:#f5f5f5;color:#333;border:1px solid #d9d9d9;height:40px}.user-center-content{flex:1;display:flex;flex-direction:column;justify-content:center;padding:2rem;height:650px}.user-center-form{width:100%;max-width:800px;margin:0 auto;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.user-center-form h2{font-size:18px;margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid #eee}.form-section{margin-bottom:25px}.form-row{display:flex;gap:20px;margin-bottom:20px}.form-group{flex:1;min-width:0}.form-group input[type=text],.form-group input[type=date],.form-group select{width:100%;padding:5px 15px;border:1px solid #d9d9d9;border-radius:4px;font-size:14px;height:30px;box-sizing:border-box}.radio-group{display:flex;gap:20px;margin-top:8px}.radio-group label{display:flex;align-items:center;gap:8px;cursor:pointer}.required{color:#f5222d}.error{color:#f5222d;font-size:12px;margin-top:4px;display:block}@media (max-width: 768px){.form-row{flex-direction:column;gap:15px}.user-center-header{flex-direction:column;align-items:flex-start;gap:15px}.header-buttons{width:100%;justify-content:space-between}.user-center-container{margin:10px;width:calc(100% - 20px);padding:15px}}.news-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #eee}.header-buttons{display:flex;gap:15px}.user-center-button,.logout-button{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;background-color:#1890ff;color:#fff;transition:background-color .3s}.user-center-button:hover,.logout-button:hover,.logout-button{background-color:#40a9ff}.logout-button:hover{background-color:#ff7875}.ant-picker-input input{display:none}.ant-picker-suffix{display:inline-block;padding:4px 12px;border:1px solid #d9d9d9;border-radius:2px;cursor:pointer}.ant-picker-suffix:hover{border-color:#40a9ff;color:#40a9ff}
