#quickModal.is-winforce-quick .quick-modal {
    width: min(1040px, calc(100vw - 34px));
    height: min(780px, calc(100vh - 34px));
    max-height: none;
    padding: 0;
    overflow: hidden;
    border: 1px solid rgba(54, 215, 255, .34);
    border-radius: 24px;
    background: #07172f;
    box-shadow: 0 30px 90px rgba(2, 8, 28, .76), 0 0 45px rgba(91, 38, 205, .24);
}

#quickModal.is-winforce-quick .quick-modal > h2 { display: none; }
#quickModal.is-winforce-quick .quick-modal > .modal-close {
    z-index: 8;
    top: 16px;
    right: 17px;
    width: 36px;
    height: 36px;
    border: 1px solid rgba(124, 224, 255, .35);
    background: rgba(6, 23, 53, .72);
    color: #dffaff;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .22);
}
#quickModal.is-winforce-quick .quick-modal > .modal-close { display:none; }

#quickModal.is-winforce-quick #quickModalContent { height: 100%; }
.wf-login-screen { position: relative; display: grid; grid-template-rows: 72px minmax(0,1fr) 36px; height: 100%; overflow: hidden; color: #fff; background: radial-gradient(circle at 50% 43%,rgba(21,87,207,.2),transparent 28%),radial-gradient(circle at 8% 82%,rgba(105,23,239,.33),transparent 25%),linear-gradient(135deg,#071044,#03113b 58%,#061d50); font-family: Inter,ui-sans-serif,system-ui,sans-serif; }
.wf-login-screen::before,.wf-login-screen::after { content:""; position:absolute; pointer-events:none; opacity:.75; }
.wf-login-screen::before { left:-55px; bottom:18px; width:330px; height:300px; background:repeating-radial-gradient(ellipse at 0 100%,transparent 0 11px,rgba(84,42,255,.26) 12px 13px),radial-gradient(circle at 24% 67%,#722eff 0 3px,transparent 4px),linear-gradient(125deg,transparent 30%,rgba(33,132,255,.22) 31% 32%,transparent 33%); transform:rotate(-5deg); }
.wf-login-screen::after { right:-70px; bottom:60px; width:290px; height:270px; background:repeating-radial-gradient(ellipse at 100% 100%,transparent 0 13px,rgba(0,126,255,.22) 14px 15px),linear-gradient(45deg,transparent 35%,rgba(0,178,255,.22) 36% 37%,transparent 38%); }
.wf-login-brand { position:relative; z-index:2; display:flex; align-items:center; padding:0 28px; border-bottom:1px solid rgba(56,126,246,.18); background:rgba(4,12,55,.58); }
.wf-login-guide { display:flex; align-items:center; gap:9px; min-width:195px; }
.wf-login-guide img { width:38px; height:38px; object-fit:cover; object-position:left center; border-radius:50%; }
.wf-login-guide span,.wf-login-guide strong,.wf-login-guide small { display:block; }
.wf-login-guide strong { font-size:16px; line-height:1; color:#f3f7ff; }
.wf-login-guide small { margin-top:3px; color:#65df8d; font-size:11px; font-weight:700; }
.wf-login-brand > i { width:1px; height:34px; margin:0 21px 0 5px; background:linear-gradient(transparent,rgba(130,170,255,.45),transparent); }
.wf-login-module { display:flex; align-items:center; gap:10px; }
.wf-login-module > span { display:grid; place-items:center; width:29px; height:29px; color:#00d9ff; }
.wf-login-module svg { width:25px; fill:none; stroke:currentColor; stroke-width:1.6; }
.wf-login-module p,.wf-login-module b,.wf-login-module strong { display:block; margin:0; }
.wf-login-module b { color:#00d9ff; font-size:7px; letter-spacing:1.4px; }
.wf-login-module strong { margin-top:4px; color:#e7eeff; font-size:9px; letter-spacing:.4px; }
.wf-login-stage { position:relative; z-index:2; display:grid; place-items:center; min-height:0; padding:14px 20px 10px; }
.wf-login-stage::before { content:""; position:absolute; right:25px; top:50%; width:96px; height:96px; border:2px solid rgba(0,143,255,.16); transform:rotate(45deg); box-shadow:0 0 32px rgba(0,136,255,.1); }
.wf-login-screen .wf-identity { width:min(520px,calc(100% - 32px)); max-width:none; margin:0; padding:22px 42px 20px; box-sizing:border-box; border:1px solid #166cff; border-top-color:#00e4ff; border-radius:15px; background:radial-gradient(circle at 50% 3%,rgba(0,181,255,.24),transparent 24%),linear-gradient(145deg,rgba(50,6,151,.78),rgba(3,31,89,.94) 48%,rgba(2,17,61,.98)); box-shadow:inset 0 1px rgba(255,255,255,.08),0 0 30px rgba(0,130,255,.22); }
.wf-cover-visual { position:relative; width:300px; height:94px; margin:0 auto 2px; }
.wf-cover-visual::before { content:""; position:absolute; left:76px; right:76px; bottom:5px; height:16px; border:2px solid rgba(0,216,255,.65); border-radius:50%; background:radial-gradient(ellipse,rgba(15,117,255,.55),transparent 65%); box-shadow:0 0 18px #087cff; }
.wf-cover-lines { position:absolute; inset:10px 30px 16px; opacity:.48; background:linear-gradient(22deg,transparent 48%,#087cff 49% 50%,transparent 51%),linear-gradient(-20deg,transparent 48%,#0668e9 49% 50%,transparent 51%),radial-gradient(circle at 15% 40%,#3468ff 0 2px,transparent 3px),radial-gradient(circle at 84% 28%,#8b3cff 0 2px,transparent 3px); }
.wf-cover-shield { position:absolute; z-index:2; left:50%; top:0; width:64px; height:72px; transform:translateX(-50%); filter:drop-shadow(0 0 13px #0bd8ff); }
.wf-cover-shield svg { width:100%; fill:url(#none); }
.wf-cover-shield path:first-child { fill:#3d47e8; stroke:#56e5ff; stroke-width:3; }
.wf-cover-shield path:last-child { fill:none; stroke:#fff; stroke-width:4; stroke-linecap:round; stroke-linejoin:round; }
.wf-cover-house,.wf-cover-speed { position:absolute; top:22px; width:43px; height:43px; color:#00cfff; opacity:.9; }
.wf-cover-house { left:34px; }.wf-cover-speed { right:34px; color:#9d5cff; }
.wf-cover-house svg,.wf-cover-speed svg { width:100%; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 0 6px currentColor); }
.wf-login-screen .wf-identity > h4 { margin:3px 0 2px; color:#fff; font-size:23px; line-height:1.12; text-shadow:0 2px 8px rgba(0,0,0,.45); }
.wf-login-screen .wf-identity > p { margin:0; color:#c4cde4; font-size:10px; line-height:1.35; letter-spacing:0; }
.wf-login-separator { position:relative; display:block; height:18px; margin:2px auto 5px; }
.wf-login-separator::before,.wf-login-separator::after { content:""; position:absolute; top:9px; width:43%; height:1px; background:linear-gradient(90deg,transparent,rgba(33,156,255,.55)); }
.wf-login-separator::before { left:0; }.wf-login-separator::after { right:0; transform:scaleX(-1); }
.wf-login-separator i { position:absolute; left:50%; top:7px; width:5px; height:5px; border-radius:50%; background:#00dfff; box-shadow:0 0 8px #00dfff; transform:translateX(-50%); }
.wf-login-screen .wf-identity form { margin-top:0; }
.wf-login-screen .wf-identity label { gap:6px; color:#d7dff1; font-size:9px; letter-spacing:0; }
.wf-login-field { position:relative; display:block; }
.wf-login-field svg { position:absolute; z-index:1; left:13px; top:50%; width:17px; transform:translateY(-50%); fill:none; stroke:#00cfff; stroke-width:1.7; }
.wf-login-screen .wf-identity input { height:40px; padding:0 13px 0 40px; border:1px solid #008fd7; border-radius:7px; background:rgba(2,22,61,.72); color:#eef8ff; font-size:11px; box-shadow:inset 0 1px 5px rgba(0,0,0,.25); }
.wf-login-screen .wf-identity input::placeholder { color:#687baf; }
.wf-login-screen .wf-identity form > button { display:flex; align-items:center; justify-content:center; gap:12px; height:43px; margin-top:13px; border:0; border-radius:7px; background:linear-gradient(100deg,#7620f5,#4434f2 48%,#00cde1); box-shadow:0 8px 20px rgba(43,28,230,.32); }
.wf-login-screen .wf-identity form > button svg { width:16px; fill:none; stroke:#fff; stroke-width:1.7; }
.wf-login-screen .wf-form-message { padding-top:4px; min-height:12px; }
.wf-login-security { display:flex; align-items:center; gap:14px; margin-top:4px; padding:10px 14px; border:1px solid rgba(20,116,219,.24); border-radius:9px; background:rgba(3,37,84,.6); text-align:left; }
.wf-login-security > span { display:grid; place-items:center; flex:0 0 35px; width:35px; height:35px; border:1px solid #00bfe9; border-radius:50%; color:#00ddff; background:rgba(0,159,222,.12); }
.wf-login-security svg { width:20px; fill:none; stroke:currentColor; stroke-width:1.8; }
.wf-login-security p { margin:0; color:#9cacc9; font-size:9px; line-height:1.45; }
.wf-login-security b { color:#00d9ff; }
.wf-login-footer { position:relative; z-index:2; display:flex; align-items:center; justify-content:center; gap:9px; color:#7890b5; font-size:8px; }
.wf-login-footer span { width:120px; height:1px; background:linear-gradient(90deg,transparent,rgba(42,113,222,.45)); }.wf-login-footer span:last-child { transform:scaleX(-1); }
.wf-login-footer svg { width:11px; fill:none; stroke:#7995c5; stroke-width:1.8; }
.wf-shell {
    --wf-cyan: #29d7f4;
    --wf-purple: #8f43ee;
    --wf-blue: #0c2b59;
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr) auto;
    height: 100%;
    color: #eef9ff;
    background:
        radial-gradient(circle at 82% 0, rgba(116, 46, 218, .29), transparent 31%),
        radial-gradient(circle at 2% 92%, rgba(18, 189, 231, .17), transparent 29%),
        linear-gradient(145deg, #0a2146, #07172f 54%, #10163e);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.wf-head {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 90px;
    padding: 14px 72px 14px 25px;
    border-bottom: 1px solid rgba(99, 210, 255, .16);
    background: linear-gradient(90deg, rgba(5, 32, 69, .92), rgba(20, 19, 67, .74));
}
.wf-head::after { content: ""; position: absolute; right: 78px; bottom: -1px; width: 145px; height: 1px; background: linear-gradient(90deg, transparent, var(--wf-cyan)); }
.wf-mark { display: grid; place-items: center; width: 53px; height: 53px; margin-right: 14px; border: 1px solid rgba(64, 224, 255, .56); border-radius: 15px; background: linear-gradient(145deg, #153b75, #4f24a2); color: white; font-size: 17px; font-weight: 900; letter-spacing: -.8px; box-shadow: inset 0 1px rgba(255,255,255,.22), 0 8px 24px rgba(38, 175, 243, .18); }
.wf-head p, .wf-head h3, .wf-head small { margin: 0; }
.wf-head p { color: #55ddf5; font-size: 9px; font-weight: 800; letter-spacing: 2.2px; }
.wf-head h3 { margin-top: 2px; color: white; font-size: 25px; line-height: 1; font-weight: 900; letter-spacing: .7px; }
.wf-head small { color: #aabed8; font-size: 11px; }
.wf-head > i { position: absolute; right: 86px; width: 100px; height: 38px; opacity: .38; background: repeating-linear-gradient(120deg, transparent 0 9px, rgba(52,215,246,.6) 10px 11px); clip-path: polygon(35% 0,100% 0,65% 100%,0 100%); }

.wf-tabs { display: flex; gap: 5px; padding: 8px 24px 0; background: rgba(5, 20, 50, .7); }
.wf-tabs button { padding: 9px 18px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: #91a8c4; font-size: 11px; font-weight: 800; cursor: pointer; }
.wf-tabs button.is-active { border-bottom-color: var(--wf-cyan); color: #eafcff; }
.wf-body { min-height: 0; overflow: auto; padding: 20px 25px; scrollbar-color: #32517c #091a37; scrollbar-width: thin; }
.wf-foot { display: flex; justify-content: center; align-items: center; gap: 7px; min-height: 33px; border-top: 1px solid rgba(83, 201, 244, .1); color: #7189a7; font-size: 9px; letter-spacing: .4px; }
.wf-foot span { width: 7px; height: 7px; border-radius: 50%; background: #2ad7ed; box-shadow: 0 0 8px #2ad7ed; }

.wf-loading { display: grid; place-items: center; align-content: center; gap: 14px; min-height: 390px; color: #9bb3ce; font-size: 12px; }
.wf-loading b { width: 35px; height: 35px; border: 3px solid rgba(40, 213, 244, .15); border-top-color: var(--wf-cyan); border-radius: 50%; animation: wfSpin .7s linear infinite; }
@keyframes wfSpin { to { transform: rotate(360deg); } }
.wf-message { margin: 20px auto; padding: 13px 16px; max-width: 650px; border: 1px solid rgba(78, 215, 244, .3); border-radius: 10px; background: rgba(15, 54, 94, .72); color: #d8f8ff; font-size: 12px; text-align: center; }
.wf-message.is-error, .wf-message.is-warn { border-color: rgba(255, 111, 134, .38); background: rgba(91, 25, 61, .48); color: #ffdce4; }

.wf-identity { width: min(480px, 100%); margin: 27px auto; padding: 29px 37px 26px; border: 1px solid rgba(62, 218, 246, .29); border-radius: 21px; background: linear-gradient(145deg, rgba(16, 53, 103, .84), rgba(22, 19, 68, .86)); box-shadow: 0 22px 55px rgba(2, 8, 28, .35), inset 0 1px rgba(255,255,255,.05); text-align: center; }
.wf-identity { max-width: 430px; border-color: rgba(151,144,255,.5); background: #f7f8ff; box-shadow: 0 24px 60px rgba(4,8,34,.48); }
.wf-crm-icon { display: grid; place-items: center; width: 58px; height: 58px; margin: -58px auto 20px; border-radius: 17px; background: linear-gradient(145deg,#6746ff,#4934ed); color: #fff; font-size: 25px; font-weight: 900; box-shadow: 0 12px 25px rgba(78,52,237,.3); }
.wf-shield { display: grid; place-items: center; width: 54px; height: 62px; margin: 0 auto 12px; border: 2px solid #49d9f0; border-radius: 19px 19px 25px 25px; background: rgba(22, 126, 186, .14); clip-path: polygon(50% 0, 94% 14%, 87% 74%, 50% 100%, 13% 74%, 6% 14%); }
.wf-shield i { width: 15px; height: 22px; border: 2px solid #d9fbff; border-radius: 8px 8px 4px 4px; }
.wf-identity > p { margin: 0; color: #6252ef; font-size: 9px; font-weight: 900; letter-spacing: 1.8px; }
.wf-identity h4 { margin: 5px 0 2px; color: #20234e; font-size: 27px; }
.wf-identity > small { color: #777c9d; font-size: 11px; }
.wf-identity form { margin-top: 22px; }
.wf-identity label, .wf-query-form label, .wf-config label { display: grid; gap: 6px; color: #4c5275; font-size: 9px; font-weight: 800; letter-spacing: .75px; text-align: left; }
.wf-identity input, .wf-query-form input, .wf-query-form select, .wf-config input, .wf-config select { width: 100%; height: 39px; padding: 0 12px; border: 1px solid rgba(92, 176, 223, .3); border-radius: 9px; outline: none; background: rgba(5, 26, 57, .76); color: #f1fbff; font: 600 12px/1 system-ui; box-sizing: border-box; transition: .18s ease; }
.wf-identity input:focus, .wf-query-form input:focus, .wf-query-form select:focus, .wf-config input:focus, .wf-config select:focus { border-color: var(--wf-cyan); box-shadow: 0 0 0 3px rgba(41, 215, 244, .1); }
.wf-identity input { height: 47px; border-color: #c9cdf0; background: #fff; color: #24284e; text-align: left; font-size: 14px; letter-spacing: 0; }
.wf-identity button, .wf-query-actions button, .wf-config-actions button { border: 1px solid rgba(129, 231, 255, .38); border-radius: 9px; background: linear-gradient(100deg, #6745f5, #4430ed); color: white; font-size: 11px; font-weight: 900; letter-spacing: .6px; box-shadow: 0 9px 22px rgba(62, 48, 218, .28); cursor: pointer; }
.wf-identity form > button { width: 100%; height: 43px; margin-top: 12px; }
.wf-identity button b { float: right; margin-right: 8px; font-size: 20px; line-height: 10px; }
.wf-identity button:disabled, .wf-query-actions button:disabled, .wf-config-actions button:disabled { opacity: .48; cursor: not-allowed; }
.wf-form-message { min-height: 18px; padding-top: 7px; color: #b6cbe0; font-size: 10px; font-weight: 700; }
.wf-form-message.is-error { color: #ff9fb2; }
.wf-form-message.is-success { color: #62e5ca; }

.wf-query-form, .wf-config { padding: 2px 3px; }
.wf-section-title { display: flex; align-items: center; gap: 10px; margin: 0 0 12px; }
.wf-section-title:not(:first-child) { margin-top: 20px; }
.wf-section-title > span { display: grid; place-items: center; width: 30px; height: 30px; border: 1px solid rgba(53, 218, 245, .36); border-radius: 9px; background: rgba(29, 110, 174, .22); color: #45dcf1; font-size: 10px; font-weight: 900; }
.wf-section-title strong, .wf-section-title small { display: block; }
.wf-section-title strong { color: #f1fbff; font-size: 13px; }
.wf-section-title small { color: #7f99b8; font-size: 9px; }
.wf-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 11px; }
.wf-grid-client { grid-template-columns: 1fr 3fr; }
.wf-span-2 { grid-column: span 2; }
.wf-query-actions, .wf-config-actions { display: flex; align-items: center; justify-content: flex-end; gap: 11px; margin-top: 18px; }
.wf-query-actions .wf-form-message, .wf-config-actions .wf-form-message { flex: 1; }
.wf-query-actions button, .wf-config-actions button { min-width: 205px; height: 42px; }
.wf-query-actions button i { display: inline-block; width: 7px; height: 7px; margin-right: 8px; border: 2px solid #fff; border-radius: 50%; box-shadow: 5px 5px 0 -3px white; }

.wf-result { margin-top: 22px; padding: 17px; border: 1px solid rgba(47, 219, 240, .27); border-radius: 16px; background: rgba(8, 35, 75, .75); }
.wf-result header { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.wf-result header > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: rgba(40, 222, 188, .16); color: #50e5c7; font-weight: 900; }
.wf-result header p, .wf-result header h4 { margin: 0; }
.wf-result header p { color: #50e5c7; font-size: 8px; font-weight: 900; letter-spacing: 1.4px; }
.wf-result header h4 { font-size: 16px; }
.wf-result-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.wf-result-item { min-height: 56px; padding: 10px 12px; border: 1px solid rgba(97, 160, 207, .18); border-radius: 10px; background: rgba(4, 20, 49, .55); }
.wf-result-item span, .wf-result-item strong { display: block; }
.wf-result-item span { margin-bottom: 4px; color: #7792b2; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.wf-result-item strong { color: #effaff; font-size: 13px; }
.wf-result-item.is-cyan strong { color: #48def1; }
.wf-result-item.is-purple strong { color: #b187ff; }
.wf-result-wide { grid-column: span 2; }

.wf-config-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.wf-config-simple { grid-template-columns: 1.5fr 1.5fr 1fr; max-width: 760px; }
.wf-config-state { display: flex; align-items: center; gap: 9px; margin-top: 16px; padding: 10px 12px; border: 1px solid rgba(79, 165, 216, .18); border-radius: 10px; background: rgba(4, 23, 53, .48); }
.wf-config-state > span { width: 9px; height: 9px; border-radius: 50%; background: #ff7a95; box-shadow: 0 0 8px #ff607e; }
.wf-config-state > span.is-online { background: #43dec2; box-shadow: 0 0 8px #43dec2; }
.wf-config-state strong, .wf-config-state small { display: block; }
.wf-config-state strong { font-size: 11px; }
.wf-config-state small { color: #7f99b8; font-size: 9px; }
.wf-config-actions .wf-secondary { border-color: rgba(61, 215, 240, .27); background: rgba(10, 54, 95, .78); box-shadow: none; }

.wf-history-wrap { overflow: auto; max-height: 515px; border: 1px solid rgba(67, 187, 229, .18); border-radius: 12px; }
.wf-history-wrap table { width: 100%; min-width: 1220px; border-collapse: collapse; background: rgba(5, 23, 51, .56); font-size: 9px; }
.wf-history-wrap th { position: sticky; top: 0; z-index: 1; padding: 9px 8px; background: #102e5a; color: #68dbef; text-align: left; text-transform: uppercase; letter-spacing: .5px; }
.wf-history-wrap td { max-width: 230px; overflow: hidden; padding: 8px; border-top: 1px solid rgba(94, 158, 202, .11); color: #c6d8e9; white-space: nowrap; text-overflow: ellipsis; }
.wf-history-wrap tbody tr:hover { background: rgba(42, 137, 193, .1); }
.wf-status { padding: 3px 7px; border-radius: 10px; background: rgba(255, 94, 128, .15); color: #ff98ad; font-weight: 900; }
.wf-status.is-ok { background: rgba(56, 220, 190, .14); color: #65e7cf; }
.wf-empty { display: grid; place-items: center; align-content: center; min-height: 370px; color: #829bb9; }
.wf-empty span { font-size: 38px; color: #36cde7; }
.wf-empty strong { margin-top: 6px; color: #ddecf8; font-size: 14px; }
.wf-empty small { margin-top: 3px; font-size: 10px; }
.wf-launch { display: grid; place-items: center; align-content: center; min-height: 380px; }
.wf-launch span { display: grid; place-items: center; width: 58px; height: 58px; border-radius: 50%; background: rgba(52, 224, 194, .16); color: #56e6cc; font-size: 26px; box-shadow: 0 0 30px rgba(52, 224, 194, .15); }
.wf-launch strong { margin-top: 14px; color: #f1fbff; font-size: 18px; }
.wf-launch small { margin-top: 4px; color: #91aac5; font-size: 11px; }
.wf-access-panel header p, .wf-access-panel header h4, .wf-access-panel header small { margin: 0; }
.wf-access-panel header p { color: #45d9ef; font-size: 8px; font-weight: 900; letter-spacing: 1.5px; }
.wf-access-panel header h4 { color: #f3fbff; font-size: 17px; }
.wf-access-panel header small { color: #809ab8; font-size: 10px; }
.wf-access-panel form { display: grid; grid-template-columns: minmax(260px, 2fr) minmax(170px, 1fr) 180px minmax(120px, 1fr); align-items: end; gap: 10px; margin: 17px 0; padding: 14px; border: 1px solid rgba(63, 197, 235, .2); border-radius: 12px; background: rgba(5, 27, 60, .5); }
.wf-access-panel form label { display: grid; gap: 6px; color: #9eb3ce; font-size: 9px; font-weight: 800; letter-spacing: .7px; }
.wf-access-panel form input, .wf-access-panel form select { width: 100%; height: 39px; padding: 0 11px; border: 1px solid rgba(92,176,223,.3); border-radius: 9px; background: rgba(5,26,57,.76); color: #effaff; box-sizing: border-box; }
.wf-access-panel form button { height: 39px; border: 1px solid rgba(129,231,255,.38); border-radius: 9px; background: linear-gradient(100deg,#6840dc,#168ecb); color: #fff; font-size: 10px; font-weight: 900; cursor: pointer; }
.wf-access-table { overflow: auto; max-height: 330px; border: 1px solid rgba(67,187,229,.18); border-radius: 12px; }
.wf-access-table table { width: 100%; border-collapse: collapse; background: rgba(5,23,51,.56); font-size: 10px; }
.wf-access-table th { position: sticky; top: 0; padding: 9px; background: #102e5a; color: #68dbef; text-align: left; }
.wf-access-table td { padding: 9px; border-top: 1px solid rgba(94,158,202,.11); color: #c6d8e9; }
.wf-row-delete { padding: 5px 9px; border: 1px solid rgba(255,105,135,.3); border-radius: 7px; background: rgba(107,28,57,.35); color: #ff9db1; font-size: 8px; font-weight: 900; cursor: pointer; }
.wf-access-empty { padding: 28px !important; color: #819ab7 !important; text-align: center; }
.wf-settings-loading { padding: 35px; color: #64748b; text-align: center; }
.wf-settings-standalone { max-width: 760px; margin: 24px auto; overflow: hidden; border: 1px solid #d9e3f0; border-radius: 18px; background: #fff; box-shadow: 0 18px 45px rgba(17,42,79,.12); }
.wf-settings-standalone > header { display: flex; align-items: center; gap: 13px; padding: 21px 24px; background: linear-gradient(120deg,#092d5b,#24145f); color: #fff; }
.wf-settings-standalone > header > span { display: grid; place-items: center; width: 47px; height: 47px; border: 1px solid #45d9ef; border-radius: 13px; background: linear-gradient(145deg,#21559b,#6534d9); font-weight: 900; }
.wf-settings-standalone header p, .wf-settings-standalone header h3, .wf-settings-standalone header small { margin: 0; }
.wf-settings-standalone header p { color: #55ddf5; font-size: 8px; font-weight: 900; letter-spacing: 1.6px; }
.wf-settings-standalone header h3 { font-size: 21px; }
.wf-settings-standalone header small { color: #b6c8df; font-size: 10px; }
.wf-settings-standalone form { display: grid; grid-template-columns: 1fr 1fr .65fr; gap: 14px; padding: 24px; }
.wf-settings-standalone form label { display: grid; gap: 6px; color: #475569; font-size: 10px; font-weight: 800; }
.wf-settings-standalone form input, .wf-settings-standalone form select { width: 100%; height: 42px; padding: 0 11px; border: 1px solid #cbd8e8; border-radius: 9px; background: #f8fbff; color: #17223d; box-sizing: border-box; }
.wf-settings-status { grid-column: 1/-1; display: flex; align-items: center; gap: 10px; padding: 11px 13px; border: 1px solid #dce6f0; border-radius: 10px; background: #f7faff; }
.wf-settings-status > i { width: 9px; height: 9px; border-radius: 50%; background: #fb7185; box-shadow: 0 0 7px #fb7185; }
.wf-settings-status > i.is-ok { background: #2dd4bf; box-shadow: 0 0 7px #2dd4bf; }
.wf-settings-status strong, .wf-settings-status small { display: block; }
.wf-settings-status strong { color: #17233e; font-size: 11px; }
.wf-settings-status small { color: #718096; font-size: 9px; }
.wf-settings-standalone .wf-form-message { grid-column: 1/-1; }
.wf-settings-actions { grid-column: 1/-1; display: flex; justify-content: flex-end; gap: 10px; }
.wf-settings-actions button { min-width: 175px; height: 40px; border: 0; border-radius: 9px; background: #0b4c7e; color: #fff; font-size: 10px; font-weight: 900; cursor: pointer; }
.wf-settings-actions .wf-bridge-download { display: inline-grid; place-items: center; min-width: 175px; height: 40px; padding: 0 14px; border-radius: 9px; background: #e5eef9; color: #143b63; font-size: 10px; font-weight: 900; text-decoration: none; }
.wf-settings-actions button:last-child { background: linear-gradient(100deg,#6745f5,#168ecb); }
.wf-bridge-token { grid-column: 1/-1; padding: 14px; border: 1px solid #87d7ff; border-radius: 12px; background: #eefaff; }
.wf-bridge-token strong { display: block; margin-bottom: 9px; color: #07266b; }
.wf-bridge-token label { display: block; margin-top: 8px; }
.wf-bridge-token input { width: 100%; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 11px; }
.wf-search-mode { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 14px; }
.wf-search-mode label { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; padding: 8px 12px; border: 1px solid #2d5f91; border-radius: 9px; background: #0b2854; color: #dcecff; font-size: 9px; font-weight: 900; cursor: pointer; }
.wf-search-mode input { accent-color: #53d9ef; }

/* Evaluador: clon visual restringido de la interfaz WinForce */
#quickModal.is-winforce-quick:has(.wf-win-app) .quick-modal {
    width: 100vw !important;
    max-width: none !important;
    height: 100vh !important;
    max-height: none !important;
    padding: 0 !important;
    overflow: auto !important;
    border: 0;
    border-radius: 0;
    background: #f1f4f7;
    box-shadow: 0 24px 70px rgba(35, 42, 54, .35);
}
#quickModal.is-winforce-quick:has(.wf-win-app) { padding: 0 !important; }
#quickModal.is-winforce-quick:has(.wf-win-app) .guide-modal-back,
#quickModal.is-winforce-quick:has(.wf-win-app) .modal-close { display: none !important; }
#quickModal.is-winforce-quick:has(.wf-win-app) #quickModalContent { min-height: 100vh; }
.wf-win-app {
    min-height: 100%;
    color: #172039;
    background: #f2f5f8;
    font-family: Poppins, Inter, "Segoe UI", sans-serif;
}
.wf-win-topbar {
    display: flex;
    align-items: center;
    min-height: 64px;
    padding: 0 34px;
    color: #fff;
    background: linear-gradient(105deg, #f45116, #ffac00);
    box-shadow: 0 2px 7px rgba(156, 78, 0, .2);
}
.wf-win-topbar > img { width: 86px; height: 52px; margin-right: 34px; object-fit: contain; }
.wf-win-topbar nav { display: flex; align-items: stretch; align-self: stretch; gap: 2px; }
.wf-win-topbar nav span, .wf-win-topbar nav strong {
    display: flex;
    align-items: center;
    padding: 0 16px;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
}
.wf-win-topbar nav strong { background: rgba(255,255,255,.17); }
.wf-win-user { display: flex; align-items: center; gap: 14px; margin-left: auto; }
.wf-win-user > span { font-size: 9px; font-weight: 800; letter-spacing: .5px; }
.wf-win-user button {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 7px;
    color: #ef6416;
    background: #fff;
    font-size: 22px;
    cursor: pointer;
}
.wf-win-hero {
    display: flex;
    align-items: center;
    min-height: 108px;
    padding: 0 58px;
    color: #fff;
    background: linear-gradient(105deg, #f45116, #ffac00);
}
.wf-win-hero h3, .wf-win-hero p { margin: 0; }
.wf-win-hero h3 { font-size: 20px; }
.wf-win-hero p { margin-top: 4px; font-size: 10px; font-weight: 700; opacity: .9; }
.wf-win-hero > b {
    margin-left: auto;
    padding: 8px 13px;
    border: 1px solid rgba(255,255,255,.45);
    border-radius: 18px;
    font-size: 8px;
    letter-spacing: .7px;
}
.wf-win-main { padding: 20px 24px 28px; }
.wf-win-main { width: min(1460px, 100%); margin: 0 auto; box-sizing: border-box; }
.wf-win-form { padding: 0; }
.wf-win-client {
    display: grid;
    grid-template-columns: 175px 230px minmax(280px, 1fr);
    align-items: end;
    gap: 18px;
    padding: 17px 22px;
    border-radius: 7px 7px 0 0;
    background: #fff;
    box-shadow: 0 5px 18px rgba(49, 65, 86, .08);
}
.wf-win-client h4 { align-self: center; margin: 0; color: #ef6416; font-size: 13px; }
.wf-win-app .wf-win-client label { color: #151b2f; font-size: 9px; letter-spacing: 0; }
.wf-win-app .wf-win-client input, .wf-win-app .wf-win-client select {
    height: 38px;
    border: 0;
    border-radius: 5px;
    color: #697087;
    background: #f1f4f8;
    font-size: 11px;
}
.wf-win-workspace {
    display: grid;
    grid-template-columns: 310px minmax(0, 1fr);
    gap: 18px;
    min-height: 480px;
    padding-top: 18px;
}
.wf-win-search {
    align-self: start;
    overflow: hidden;
    padding: 10px;
    border: 8px solid #e2e9ee;
    border-radius: 8px;
    background: #b8c5ce;
    box-shadow: 0 7px 19px rgba(54, 70, 86, .12);
}
.wf-win-search > h4 {
    margin: -10px -10px 8px;
    padding: 7px 10px;
    color: #fff;
    background: #9eafb9;
    font-size: 12px;
    text-align: center;
}
.wf-win-modes { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; margin-bottom: 6px; }
.wf-win-modes input { position: absolute; opacity: 0; pointer-events: none; }
.wf-win-modes label { display: block; }
.wf-win-modes span {
    display: grid;
    place-items: center;
    min-height: 28px;
    border-radius: 4px;
    color: #556270;
    background: #dce3e8;
    font-size: 8px;
    cursor: pointer;
}
.wf-win-modes input:checked + span { color: #fff; background: #3488c4; }
.wf-win-address, .wf-win-coordinates { display: grid; gap: 5px; }
.wf-win-address[hidden], .wf-win-coordinates[hidden] { display: none !important; }
.wf-win-app .wf-win-address input, .wf-win-app .wf-win-coordinates input {
    height: 31px;
    padding: 0 10px;
    border: 1px solid transparent;
    border-radius: 4px;
    outline: 0;
    color: #525c67;
    background: #f7f8f9;
    font-size: 10px;
    font-weight: 500;
}
.wf-win-app .wf-win-address input:first-child { border: 2px solid #252525; }
.wf-win-app .wf-win-address input:focus, .wf-win-app .wf-win-coordinates input:focus {
    border-color: #358dca;
    box-shadow: 0 0 0 2px rgba(53,141,202,.15);
}
.wf-win-search-actions { display: grid; grid-template-columns: 1.35fr 1fr; gap: 5px; margin-top: 8px; }
.wf-win-search-actions button {
    min-width: 0;
    height: 31px;
    border: 1px solid #236a9c;
    border-radius: 5px;
    color: #fff;
    background: #3488c4;
    font-size: 9px;
    font-weight: 800;
    box-shadow: none;
}
.wf-win-search-actions button:last-child { background: #468fc4; }
.wf-win-coordinates { margin-top: 8px; padding-top: 8px; border-top: 7px solid #aab8c1; }
.wf-win-result-zone {
    min-width: 0;
    padding: 22px;
    border-radius: 7px;
    background: #fff;
    box-shadow: 0 5px 18px rgba(49, 65, 86, .08);
}
.wf-win-empty { display: grid; place-items: center; align-content: center; min-height: 380px; text-align: center; }
.wf-win-empty > span { color: #f58a19; font-size: 52px; }
.wf-win-empty strong { margin-top: 8px; color: #1c2437; font-size: 18px; }
.wf-win-empty p { max-width: 390px; margin: 6px 0 0; color: #9ba2af; font-size: 11px; }
.wf-win-app > .wf-form-message, .wf-win-form > .wf-form-message { color: #d44b19; }
.wf-win-app .wf-result { margin: 0; border: 0; background: transparent; }
.wf-win-app .wf-result header > span { color: #fff; background: #35aa6d; }
.wf-win-app .wf-result header p { color: #2a9b63; }
.wf-win-app .wf-result header h4 { color: #172039; }
.wf-win-app .wf-result-item { border-color: #e4e9ef; background: #f6f8fa; }
.wf-win-app .wf-result-item span { color: #8b94a1; }
.wf-win-app .wf-result-item strong { color: #1e293b; }
.wf-win-app .wf-result-item.is-cyan strong { color: #168cc5; }
.wf-win-app .wf-result-item.is-purple strong { color: #e96a17; }
.wf-win-evaluation { color: #202638; }
.wf-win-evaluation > nav { display: flex; justify-content: center; gap: 34px; margin-bottom: 26px; border-bottom: 1px solid #edf0f4; }
.wf-win-evaluation > nav span, .wf-win-evaluation > nav strong { padding: 0 4px 12px; font-size: 13px; }
.wf-win-evaluation > nav strong { border-bottom: 3px solid #f4a312; color: #ed9411; }
.wf-win-evaluation-grid { display: grid; grid-template-columns: 1fr 1.15fr; gap: 20px; }
.wf-win-geo, .wf-win-customer { display: grid; align-content: start; gap: 17px; }
.wf-win-evaluation label { display: grid; gap: 7px; color: #22283a; font-size: 10px; font-weight: 800; }
.wf-win-evaluation label > div {
    min-height: 42px;
    padding: 0 13px;
    display: flex;
    align-items: center;
    border-radius: 6px;
    color: #657084;
    background: #f0f4f8;
    font-size: 11px;
    font-weight: 600;
}
.wf-win-geo > article { display: flex; align-items: center; gap: 15px; padding: 17px; border: 1px dashed #49c38c; border-radius: 7px; background: #ebfff4; }
.wf-win-geo > article.is-uncovered { border-color: #ef7d7d; background: #fff2f2; }
.wf-win-geo > article > b { color: #64d8a1; font-size: 26px; }
.wf-win-geo > article.is-uncovered > b { color: #ef7d7d; }
.wf-win-geo article p, .wf-win-geo article strong, .wf-win-geo article small { display: block; margin: 0; }
.wf-win-geo article strong { font-size: 12px; }
.wf-win-geo article small { margin-top: 3px; color: #4b5565; font-size: 10px; }
.wf-win-coord-result, .wf-win-doc-result, .wf-win-name-result { display: grid; gap: 16px; }
.wf-win-coord-result, .wf-win-doc-result { grid-template-columns: 1fr 1fr; }
.wf-win-name-result { grid-template-columns: repeat(3, 1fr); }
.wf-win-score { display: grid; grid-template-columns: 38px 1fr; align-items: center; min-height: 66px; padding: 0 15px; border: 1px dashed #199ed4; border-radius: 7px; background: #f0faff; }
.wf-win-score > b { grid-row: span 2; color: #139fdc; font-size: 25px; }
.wf-win-score span { align-self: end; color: #283246; font-size: 12px; }
.wf-win-score small { align-self: start; margin-top: 3px; color: #8390a3; font-size: 9px; }
.wf-win-evaluation > footer { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; padding-top: 15px; border-top: 1px solid #edf0f4; }
.wf-win-evaluation > footer span { padding: 6px 10px; border-radius: 14px; color: #788397; background: #f1f4f7; font-size: 9px; }
.wf-win-evaluation > footer b { color: #273247; }

/* Flujo oficial: GeoFinder -> información del cliente -> score */
.wf-wizard-shell { min-height: 100vh; background: #fff; }
.wf-wizard-title {
    display: flex; align-items: center; min-height: 76px; padding: 0 18px;
    border-bottom: 1px solid #e7ebf0; color: #1e2639; background: #fff;
}
.wf-wizard-title > strong { font-size: 15px; }
.wf-wizard-title > button {
    margin-left: auto; border: 0; color: #a7afbf; background: transparent;
    font-size: 22px; cursor: pointer;
}
.wf-wizard-steps {
    display: flex; justify-content: center; gap: 30px; min-height: 92px;
    align-items: end; padding-bottom: 17px; box-sizing: border-box; background: #fff;
}
.wf-wizard-steps span, .wf-wizard-steps strong {
    padding: 0 0 10px; color: #1f273a; font-size: 13px; font-weight: 700;
}
.wf-wizard-steps strong { color: #f48a00; border-bottom: 2px solid #f48a00; }
.wf-map-form { position: relative; }
.wf-map-stage { position: relative; min-height: calc(100vh - 168px); overflow: hidden; background: #d9e8d1; }
.wf-map-frame { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: #d8e8d0; }
.wf-map-stage .wf-win-search {
    position: absolute; z-index: 2; top: 0; left: 12px; width: 250px;
    box-sizing: border-box; border: 0; border-radius: 0 0 7px 7px;
}
.wf-map-stage .wf-win-search-actions { grid-template-columns: 1fr 1fr; }
.wf-map-message {
    position: absolute; z-index: 3; left: 280px; bottom: 14px; max-width: calc(100% - 310px);
    padding: 8px 12px; border-radius: 5px; color: #d64b17; background: rgba(255,255,255,.94);
    font-size: 10px; font-weight: 700;
}
.wf-customer-stage {
    display: grid; grid-template-columns: .85fr 1.2fr; gap: 15px;
    min-height: calc(100vh - 168px); padding: 0 29px 28px; box-sizing: border-box; background: #fff;
}
.wf-coverage-summary, .wf-customer-form { display: grid; align-content: start; gap: 16px; }
.wf-coverage-summary label, .wf-customer-form label {
    display: grid; gap: 6px; color: #22293b; font-size: 11px; font-weight: 700;
}
.wf-coverage-summary label > div, .wf-client-docs input, .wf-client-docs select {
    display: flex; align-items: center; min-height: 34px; padding: 0 11px; box-sizing: border-box;
    border: 0; border-radius: 4px; color: #657084; background: #f0f4f8; font-size: 11px;
}
.wf-coverage-summary > article {
    display: flex; align-items: center; gap: 14px; padding: 14px;
    border: 1px dashed #49c38c; border-radius: 5px; background: #edfff5;
}
.wf-coverage-summary > article.is-uncovered { border-color: #ef7d7d; background: #fff2f2; }
.wf-coverage-summary article b { color: #62d59e; font-size: 22px; }
.wf-coverage-summary article p, .wf-coverage-summary article strong, .wf-coverage-summary article small { display: block; margin: 0; }
.wf-coverage-summary article small { margin-top: 3px; color: #525d6c; font-size: 10px; }
.wf-client-docs { display: grid; grid-template-columns: .85fr 1fr 106px; gap: 22px; align-items: end; }
.wf-client-docs input, .wf-client-docs select { width: 100%; height: 34px; }
.wf-client-docs button {
    height: 34px; border: 0; border-radius: 4px; color: #fff; background: #4bc987;
    font-size: 24px; font-weight: 900; cursor: pointer;
}
.wf-client-docs button:disabled { opacity: .6; cursor: wait; }
.wf-score-prompt {
    display: grid; place-items: center; align-content: center; min-height: 280px;
    border-radius: 6px; color: #22293b; background: #fafbfd; text-align: center;
}
.wf-score-prompt span { color: #f29918; font-size: 38px; }
.wf-score-prompt p { margin: 5px 0 0; color: #949dab; font-size: 10px; }
.wf-back-map, .wf-new-evaluation {
    justify-self: start; min-height: 34px; padding: 0 15px; border: 1px solid #e5e9ef;
    border-radius: 5px; color: #5e697c; background: #fff; font-size: 9px; font-weight: 800; cursor: pointer;
}
.wf-score-result { padding: 0 29px 28px; background: #fff; }
.wf-score-result .wf-win-evaluation { padding: 22px; border-radius: 7px; box-shadow: 0 4px 18px rgba(31,45,61,.09); }
.wf-new-evaluation { margin-top: 18px; color: #fff; background: #f38b11; border-color: #f38b11; }

@media (max-width: 760px) {
    #quickModal.is-winforce-quick .quick-modal { width: calc(100vw - 12px); height: calc(100vh - 12px); border-radius: 16px; }
    .wf-head { min-height: 75px; padding-left: 14px; }
    .wf-mark { width: 43px; height: 43px; border-radius: 12px; }
    .wf-head h3 { font-size: 20px; }
    .wf-body { padding: 15px 13px; }
    .wf-identity { box-sizing: border-box; margin-top: 12px; padding: 24px 18px; }
    .wf-grid, .wf-grid-client, .wf-config-grid, .wf-result-grid { grid-template-columns: 1fr 1fr; }
    .wf-config-simple { grid-template-columns: 1fr 1fr; }
    .wf-span-2 { grid-column: span 2; }
    .wf-query-actions, .wf-config-actions { align-items: stretch; flex-direction: column; }
    .wf-access-panel form { grid-template-columns: 1fr 1fr; }
    .wf-settings-standalone form { grid-template-columns: 1fr; }
    .wf-settings-standalone form > * { grid-column: 1; }
    .wf-login-screen { grid-template-rows:64px minmax(0,1fr) 30px; }
    .wf-login-brand { padding:0 12px; }
    .wf-login-guide { min-width:150px; }
    .wf-login-guide strong { font-size:13px; }
    .wf-login-brand > i { margin:0 10px 0 2px; }
    .wf-login-module strong { font-size:7px; }
    .wf-login-screen .wf-identity { width:min(500px,calc(100% - 8px)); padding:18px 20px 16px; }
    .wf-cover-visual { width:260px; }
    .wf-query-actions button, .wf-config-actions button { width: 100%; }
    .wf-win-topbar { padding: 0 12px; }
    .wf-win-topbar > img { margin-right: 10px; }
    .wf-win-topbar nav span { display: none; }
    .wf-win-topbar nav strong { padding: 0 9px; }
    .wf-win-user > span, .wf-win-hero > b { display: none; }
    .wf-win-hero { min-height: 82px; padding: 0 20px; }
    .wf-win-main { padding: 10px; }
    .wf-win-client { grid-template-columns: 1fr; gap: 9px; }
    .wf-win-client h4 { display: none; }
    .wf-win-workspace { grid-template-columns: 1fr; }
    .wf-win-search { width: auto; }
    .wf-win-evaluation-grid { grid-template-columns: 1fr; }
    .wf-win-name-result { grid-template-columns: 1fr; }
    .wf-wizard-steps { gap: 13px; overflow-x: auto; justify-content: flex-start; padding-left: 14px; }
    .wf-wizard-steps span, .wf-wizard-steps strong { white-space: nowrap; font-size: 10px; }
    .wf-map-stage .wf-win-search { left: 8px; width: min(250px, calc(100% - 16px)); }
    .wf-customer-stage { grid-template-columns: 1fr; padding: 0 14px 20px; }
    .wf-client-docs { grid-template-columns: 1fr; gap: 10px; }
    .wf-score-result { padding: 0 14px 20px; }
}

@media (max-width: 460px) {
    .wf-grid, .wf-grid-client, .wf-config-grid, .wf-result-grid { grid-template-columns: 1fr; }
    .wf-span-2, .wf-result-wide { grid-column: auto; }
    .wf-access-panel form { grid-template-columns: 1fr; }
    .wf-head > i { display: none; }
}
