.install-slider{max-width:365px;margin:0 auto;position:relative}.install-slider__viewport{align-items:center;display:flex;position:relative}.install-slider__slide{text-align:center;flex:1}.install-slider__image-btn{cursor:zoom-in;background:0 0;border:none;width:100%;padding:0}.install-slider__slide img{border-radius:8px;width:100%;max-width:365px}.install-slider__description{text-align:left;white-space:pre-line;margin-top:12px;font-size:14px;line-height:1.5}.install-slider__nav{color:#fff;cursor:pointer;z-index:2;background:#00000073;border:none;border-radius:50%;width:32px;height:32px;font-size:24px;line-height:1;position:absolute;top:40%;transform:translateY(-50%)}.install-slider__nav--prev{left:-8px}.install-slider__nav--next{right:-8px}.install-slider__dots{justify-content:center;gap:8px;margin:16px 0 0;padding:0;list-style:none;display:flex}.install-slider__dots button{cursor:pointer;background:#ccc;border:none;border-radius:50%;width:10px;height:10px;padding:0}.install-slider__dots button.is-active{background:#007bff}.install-slider__lightbox{z-index:9999;background:#000000d9;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.install-slider__lightbox img{max-width:100%;max-height:90vh}.install-slider__close{color:#fff;cursor:pointer;background:0 0;border:none;font-size:36px;position:absolute;top:16px;right:24px}*,:before,:after{box-sizing:border-box}body{color:#212529;background:#f4f6f9;min-height:100vh;margin:0;font-family:Segoe UI,Microsoft JhengHei,sans-serif}#root{justify-content:center;align-items:flex-start;min-height:100vh;padding:24px 16px;display:flex}.login-box{width:100%;max-width:420px}.card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 0 1px #00000020,0 1px 3px #0000001a}.card-outline-primary{border-top:3px solid #007bff}.card-header{border-bottom:1px solid #00000014;padding:20px 16px 12px}.card-body,.card-footer{padding:20px 16px}.card-footer{text-align:center;color:#6c757d;border-top:1px solid #00000014}.brand{flex-direction:column;align-items:center;gap:8px;display:flex}.brand--row{flex-direction:row;gap:12px}.brand__logo{object-fit:cover;border-radius:50%;width:72px;height:72px}.brand__logo--sm{width:56px;height:56px}.brand__title{color:#343a40;margin:0;font-size:1.5rem;font-weight:600}.login-box-msg{text-align:center;color:#6c757d;margin:0 0 16px}.login-forgot-link{color:#007bff;cursor:pointer;background:0 0;border:none;width:100%;margin-top:12px;padding:0;font-size:.95rem;text-decoration:underline;display:block}.login-forgot-link:hover{color:#0056b3}.modal-overlay{z-index:10000;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-dialog{background:#fff;border-radius:8px;width:100%;max-width:360px;padding:20px 16px;box-shadow:0 8px 24px #0003}.modal-dialog__title{text-align:center;color:#343a40;margin:0 0 8px;font-size:1.2rem}.modal-dialog__hint{text-align:center;color:#6c757d;margin:0 0 16px;font-size:.95rem}.modal-dialog__actions{gap:8px;margin-top:16px;display:flex}.modal-dialog__actions .btn{flex:1}.input-group{background:#fff;border:1px solid #ced4da;border-radius:6px;margin-bottom:12px;display:flex;overflow:hidden}.input-group:focus-within{border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff26}.form-control{border:none;outline:none;flex:1;min-width:0;padding:10px 12px;font-size:1rem}.input-group__addon{color:#6c757d;background:#f8f9fa;border-left:1px solid #ced4da;justify-content:center;align-items:center;padding:0 12px;font-size:.95rem;display:flex}.field-icon{color:#6c757d;cursor:pointer;background:0 0;border:none;align-self:center;margin-right:8px;padding:4px;font-size:.85rem}.btn{cursor:pointer;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:1rem;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.btn:disabled{opacity:.65;cursor:not-allowed}.btn-block{width:100%}.btn-primary{color:#fff;background:#007bff}.btn-primary:hover:not(:disabled){background:#0069d9}.btn-success{color:#fff;background:#28a745}.btn-success:hover:not(:disabled){background:#218838}.btn-light{color:#212529;background:#f8f9fa;border-color:#dee2e6}.btn-sm{padding:6px 12px;font-size:.875rem}.btn-outline-light{color:#fff;background:0 0;border-color:#ffffffb3}.text-center{text-align:center}.install-section{margin-bottom:20px}.install-btn{color:#0056b3;cursor:pointer;background:#f8f9fa;border:1px solid #dee2e6;border-radius:12px;flex-direction:column;align-items:center;gap:6px;min-width:180px;padding:16px 20px;font-size:1rem;display:inline-flex}.install-btn:hover{background:#e9ecef}.install-btn__icon{font-size:1.75rem;line-height:1}.install-btn__label{font-size:1.05rem;line-height:1.4}.apk-steps{text-align:left;color:#495057;margin:0 0 16px;padding-left:1.25rem;font-size:.95rem;line-height:1.6}.apk-steps li+li{margin-top:6px}.apk-guide-hint{color:#856404;background:#fff3cd;border-radius:8px;margin:12px 0 0;padding:10px 12px;font-size:.9rem;line-height:1.5}.apk-find-paths{color:#495057;text-align:left;background:#f8f9fa;border-radius:8px;margin:10px 0 0;padding:10px 12px 10px 1.5rem;font-size:.9rem;line-height:1.6}.apk-find-paths li+li{margin-top:8px}.apk-find-paths strong{color:#212529}.install-pending{margin-top:12px}.install-done-banner{color:#155724;text-align:center;background:#d4edda;border-radius:8px;flex-direction:column;gap:8px;margin-bottom:12px;padding:16px;line-height:1.5;display:flex}.install-done-banner strong{font-size:1.1rem}
