:root{--bg:#eef1f5;--card:#fff;--text:#14202e;--muted:#6b7888;--primary:#2563eb;--primary-dark:#1d4ed8;--success:#1f9d57;--success-bg:#e7f6ee;--danger:#e5484d;--danger-bg:#fdecec;--amber:#b9772a;--amber-bg:#fcf1e2;--border:#e4e8ee;--field:#f7f9fb;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,sans-serif}*{box-sizing:border-box}body{background:var(--bg);margin:0}a{color:inherit;text-decoration:none}h1,h2,h3,h4{margin:0}.landing{flex-direction:column;justify-content:center;align-items:center;gap:28px;min-height:100vh;padding:24px;display:flex}.landing .logo{letter-spacing:-.5px;font-size:30px;font-weight:700}.landing .logo span{color:var(--primary)}.landing .tagline{color:var(--muted);text-align:center;margin-top:4px}.role-cards{flex-wrap:wrap;justify-content:center;gap:18px;display:flex}.role-card{background:var(--card);border:1px solid var(--border);cursor:pointer;text-align:center;border-radius:16px;width:220px;padding:22px;transition:transform .1s,box-shadow .1s}.role-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px #1428501a}.role-card .ico{font-size:34px}.role-card h3{margin:10px 0 4px;font-size:18px}.role-card p{color:var(--muted);margin:0;font-size:13px}.phone-wrap{justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.phone{background:var(--card);border:10px solid #11161d;border-radius:38px;flex-direction:column;width:390px;max-width:100%;height:min(840px,100vh - 32px);display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px #0f192d40}.phone .statusbar{color:#111;flex:none;justify-content:space-between;align-items:center;height:30px;padding:0 22px;font-size:13px;font-weight:600;display:flex}.screen{flex-direction:column;flex:1;min-height:0;display:flex}.screen-head{border-bottom:1px solid var(--border);flex:none;align-items:center;height:52px;padding:0 16px;display:flex;position:relative}.screen-head .back{cursor:pointer;color:var(--text);width:28px;font-size:20px}.screen-head .title{text-align:center;pointer-events:none;font-size:15px;font-weight:600;position:absolute;left:0;right:0}.screen-body{flex:1;padding:20px;overflow-y:auto}.screen-foot{border-top:1px solid var(--border);flex:none;padding:16px}.m-heading{letter-spacing:-.4px;margin-bottom:6px;font-size:24px;font-weight:700}.m-sub{color:var(--muted);margin-bottom:20px;font-size:14px}.m-field{margin-bottom:16px;display:block}.m-field>span{color:var(--muted);margin-bottom:6px;font-size:13px;display:block}.m-field input,.m-field textarea,.m-field select{width:100%;font:inherit;border:1px solid var(--border);background:var(--card);border-radius:12px;padding:13px 14px;font-size:15px}.m-field input:focus,.m-field textarea:focus{border-color:var(--primary);outline:none}.m-field textarea{resize:none;min-height:90px}.m-btn{width:100%;font:inherit;background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:14px;padding:15px;font-size:16px;font-weight:600}.m-btn:hover{background:var(--primary-dark)}.m-btn:disabled{opacity:.5;cursor:default}.m-btn.ghost{background:var(--field);color:var(--text);border:1px solid var(--border)}.opt-row{border:1px solid var(--border);cursor:pointer;background:var(--card);border-radius:12px;align-items:center;gap:12px;margin-bottom:10px;padding:14px;display:flex}.opt-row .ico{background:#eaf1ff;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.opt-row .nm{flex:1;font-size:15px}.opt-row .chk{border:2px solid var(--border);color:#fff;border-radius:7px;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.opt-row.on .chk{background:var(--primary);border-color:var(--primary)}.pills{gap:10px;display:flex}.pill{text-align:center;border:1px solid var(--border);background:var(--card);cursor:pointer;border-radius:11px;flex:1;padding:11px;font-size:14px}.pill.on{background:var(--primary);color:#fff;border-color:var(--primary);font-weight:600}.banner{text-align:center;border-radius:14px;margin-bottom:16px;padding:16px}.banner.amber{background:var(--amber-bg)}.banner.green{background:var(--success-bg)}.banner.info{background:#eaf1ff}.banner .bico{font-size:28px}.banner h4{margin:8px 0 2px;font-size:16px}.banner p{color:var(--muted);margin:0;font-size:13px}.checklist{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:4px 14px}.check-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:11px 0;font-size:14px;display:flex}.check-item:last-child{border-bottom:none}.check-item.done{color:var(--text)}.check-item.pending{color:var(--muted)}.check-item .ci{color:var(--success)}.check-item.pending .ci{color:var(--muted)}.upload-box{cursor:pointer;border:1px solid var(--border);border-radius:12px;align-items:center;gap:12px;margin-bottom:12px;padding:16px;display:flex}.upload-box.empty{border-style:dashed;border-color:var(--primary)}.upload-box.done{border-color:var(--success);background:var(--success-bg)}.upload-box .uico{background:#eaf1ff;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.upload-box.done .uico{background:#d6efdf}.upload-box .ut{flex:1}.upload-box .ut b{font-size:14px;display:block}.upload-box .ut small{color:var(--muted);font-size:12px}.photo-pick{flex-direction:column;align-items:center;gap:8px;margin:12px 0 20px;display:flex}.photo-pick .circle{background:#eaf1ff;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;font-size:26px;display:flex;overflow:hidden}.photo-pick .circle img{object-fit:cover;width:100%;height:100%}.photo-pick .lbl{color:var(--primary);font-size:14px;font-weight:500}.center-screen{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.big-check{background:var(--success-bg);width:84px;height:84px;color:var(--success);border-radius:50%;justify-content:center;align-items:center;margin-bottom:18px;font-size:40px;display:flex}.msg{border-radius:10px;margin-top:10px;padding:9px 12px;font-size:13px}.msg.err{background:var(--danger-bg);color:var(--danger)}.msg.ok{background:var(--success-bg);color:var(--success)}.admin{min-height:100vh;display:flex}.sidebar{background:var(--card);border-right:1px solid var(--border);flex:none;width:232px;padding:16px 12px}.sidebar .brand{align-items:center;gap:10px;padding:6px 8px 16px;display:flex}.sidebar .brand .mark{background:var(--primary);color:#fff;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;font-weight:700;display:flex}.sidebar .brand b{font-size:16px}.sidebar .brand small{color:var(--primary);font-size:11px;display:block}.nav-item{color:var(--muted);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;width:100%;margin-bottom:2px;padding:10px 12px;font-size:14px;display:flex}.nav-item:hover{background:var(--field)}.nav-item.active{color:var(--primary);background:#eaf1ff;font-weight:500}.nav-item .dot{opacity:.5;background:currentColor;border-radius:50%;width:7px;height:7px}.admin-main{flex-direction:column;flex:1;min-width:0;display:flex}.admin-top{border-bottom:1px solid var(--border);background:var(--card);flex:none;justify-content:space-between;align-items:center;height:60px;padding:0 24px;display:flex}.admin-top h2{font-size:18px}.admin-content{flex:1;padding:22px 24px;overflow:auto}.toolbar2{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:16px;display:flex}.panel{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px}.panel h3{margin-bottom:12px;font-size:15px}table.tbl{border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:12px;width:100%;font-size:13px;overflow:hidden}table.tbl th{text-align:left;background:var(--field);color:var(--muted);border-bottom:1px solid var(--border);padding:11px 12px;font-weight:500}table.tbl td{border-bottom:1px solid var(--border);padding:11px 12px}table.tbl tr:last-child td{border-bottom:none}table.tbl tr:hover td{background:#fafbfc}.badge2{border-radius:20px;padding:2px 9px;font-size:11px;font-weight:500}.badge2.unverified,.badge2.not_submitted{background:var(--field);color:var(--muted)}.badge2.active,.badge2.approved{background:var(--success-bg);color:var(--success)}.badge2.blocked,.badge2.rejected{background:var(--danger-bg);color:var(--danger)}.badge2.pending{background:var(--amber-bg);color:var(--amber)}input.in,select.in,textarea.in{font:inherit;border:1px solid var(--border);background:#fff;border-radius:8px;width:100%;padding:8px 10px;font-size:13px}.lbl2{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.btn2{font:inherit;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:8px;padding:8px 13px;font-size:13px}.btn2:hover{background:var(--field)}.btn2.primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn2.danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn2.success{background:var(--success);color:#fff;border-color:var(--success)}.btn2:disabled{opacity:.5;cursor:default}.btn2.sm{padding:4px 9px;font-size:12px}.overlay{z-index:20;background:#0a142847;justify-content:flex-end;display:flex;position:fixed;inset:0}.slideover{background:var(--card);width:460px;max-width:92vw;height:100%;padding:20px;overflow:auto}.slideover .so-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.slideover .so-head h3{font-size:17px}.slideover .so-head .x{cursor:pointer;color:var(--muted);font-size:20px}.kv{border-bottom:1px solid var(--border);justify-content:space-between;padding:8px 0;font-size:14px;display:flex}.kv .k{color:var(--muted)}.kv .v{font-weight:500}.doc-prev{text-align:center;color:var(--primary);background:#eaf1ff;border-radius:10px;margin:8px 0;padding:26px;font-size:13px}.doc-prev img{border-radius:8px;max-width:100%}.ck{cursor:pointer;align-items:center;gap:9px;padding:8px 0;font-size:14px;display:flex}.ck .box{border:2px solid var(--border);color:#fff;border-radius:6px;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.ck.on .box{background:var(--primary);border-color:var(--primary)}.json{color:#cdd9ea;white-space:pre-wrap;word-break:break-word;background:#161d29;border-radius:8px;max-height:240px;margin:8px 0 0;padding:10px;font-family:ui-monospace,monospace;font-size:11px;overflow:auto}.muted{color:var(--muted)}.spacer{height:14px}.row2{flex-wrap:wrap;gap:8px;display:flex}.token-pill{background:var(--field);color:var(--muted);border-radius:20px;padding:3px 9px;font-size:11px}.token-pill.on{background:var(--success-bg);color:var(--success)}
