/* Local website and account-area design revision. */
.tk-public-site { background:#f7f9fd; color:#172640; font-family:Inter,"Segoe UI",Arial,sans-serif; }
.tk-public-site .grid-overlay { display:none; }
.tk-public-site [class*="text-white"] { color:#66758e; }
.tk-public-site [class~="text-white"] { color:#172640; }
.tk-public-site [class*="border-white/"] { border-color:#e3eaf5; }
.tk-public-site [class*="shadow-glow"],.tk-public-site [class*="shadow-soft"] { box-shadow:none; }
.tk-public-site header { background:#ffffffed; border-bottom:1px solid #e7edf6; backdrop-filter:blur(16px); }
.tk-public-site header > div > div { border:0; border-radius:0; background:none; backdrop-filter:none; }
.tk-public-site header > div > div > div:first-child { height:84px; }
.tk-public-site header img { width:34px; height:34px; border-radius:11px; }
.tk-public-site header [class*="font-extrabold"] { color:#172640; }
.tk-public-site header nav a { font-size:12px; color:#66758e; }
.tk-public-site header nav a:hover { color:#3468ed; }
.tk-public-site [data-open-app] { background:#eaf0ff; border:1px solid #dde6fd; color:#3468ed; font-size:12px; }
.tk-public-site #menuBtn { color:#172640; background:#f2f5fb; border-color:#e2e8f3; }
.tk-public-site main > section:first-child { padding-top:70px; padding-bottom:45px; }
.tk-public-site .tk-hero-grid { gap:70px; }
.tk-public-site .tk-hero-title { font-size:clamp(38px,4.8vw,66px); line-height:1.1; font-weight:700; letter-spacing:-3px; }
.tk-public-site .tk-hero-title span:last-child { color:#3468ed; background:none; -webkit-text-fill-color:#3468ed; }
.tk-public-site .tk-hero-grid > div:first-child > p { font-size:15px; line-height:1.9; max-width:480px; }
.tk-public-site .tk-hero-grid > div:first-child > div:first-child { font-size:10px; letter-spacing:.6px; color:#597bb5; background:#edf3ff; border-color:#dce6f9; }
.tk-public-site .tk-hero-grid > div:first-child > div:nth-last-child(1) { gap:10px; }
.tk-public-site .tk-hero-grid > div:first-child > div:nth-last-child(1) > div { padding:10px 0; background:none; border:0; font-size:10px; }
.tk-public-site .tk-hero-grid [href*="play.google.com"] { background:#172640; color:white; border-radius:9px; font-size:12px; padding:15px 22px; box-shadow:0 8px 20px #17264015; }
.tk-product-scene { position:relative; min-height:465px; border-radius:30px; display:flex; align-items:center; justify-content:center; background:radial-gradient(ellipse at 65% 20%,#d3e0ff,transparent 70%),#eaf0fc; perspective:1000px; overflow:hidden; }
.tk-product-scene::before { content:""; position:absolute; width:370px; height:370px; border:1px solid #ccd9f2; border-radius:50%; box-shadow:0 0 0 45px #dce6f84d,0 0 0 90px #dce6f844; top:90px; left:100px; }
.tk-scene-label { position:absolute; left:26px; top:24px; letter-spacing:1.5px; font-size:8px; color:#7286aa; }
.tk-contact-card { position:relative; width:76%; max-width:330px; padding:26px; border:1px solid #ffffffcc; border-radius:20px; background:#ffffffee; box-shadow:20px 30px 60px #365b9c22; transform:rotateY(-10deg) rotateZ(-4deg); }
.tk-card-monogram { display:grid; place-items:center; width:48px; height:48px; border-radius:15px; background:#e5edff; color:#5e83c7; font-size:17px; font-weight:600; margin-bottom:20px; }
.tk-contact-card strong { display:block; font-size:23px; letter-spacing:-.7px; color:#172640; }
.tk-contact-card p { color:#7889a3; font-size:11px; margin-top:5px; }
.tk-card-contact { display:flex; align-items:center; gap:9px; border-top:1px solid #edf1f7; margin-top:22px; padding-top:16px; color:#61738f; font-size:11px; }
.tk-card-contact i { width:6px; height:6px; border-radius:50%; background:#72bca2; }
.tk-card-bottom { display:flex; align-items:flex-end; justify-content:space-between; margin-top:24px; }
.tk-card-bottom img { width:25px; height:25px; border-radius:7px; }
.tk-card-bottom span { color:#93a2b8; font-size:9px; }
.tk-floating-note { position:absolute; bottom:46px; right:20px; background:#172b51; padding:15px 20px; border-radius:13px; color:white; display:flex; align-items:center; gap:13px; box-shadow:0 10px 30px #172b5122; transform:rotate(3deg); }
.tk-floating-note b { display:grid; place-items:center; width:27px; height:27px; border-radius:50%; background:#75d4b521; color:#91e4c9; font-size:13px; }
.tk-floating-note strong { display:block; font-size:10px; }
.tk-floating-note small { display:block; font-size:8px; margin-top:4px; color:#a1b3d0; }
.tk-process-strip { max-width:1216px; margin:0 auto 45px; padding:26px 0; border-top:1px solid #e1e8f3; border-bottom:1px solid #e1e8f3; display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.tk-process-strip article { display:flex; align-items:center; gap:15px; }
.tk-process-strip b { color:#b1c3e2; font-size:22px; font-weight:400; }
.tk-process-strip strong { display:block; color:#213551; font-size:11px; }
.tk-process-strip span { display:block; color:#8291aa; font-size:10px; margin-top:5px; }
.tk-public-site #about > div,.tk-public-site #security > div > div,.tk-public-site #faq details,.tk-public-site .tk-feature-card { background:#fff; border:1px solid #e3eaf4; border-radius:17px; box-shadow:0 4px 10px #142b5103; }
.tk-public-site #about h2,.tk-public-site #features h2,.tk-public-site #security h2,.tk-public-site #faq h2 { font-size:29px; color:#172640; font-weight:650; letter-spacing:-.8px; }
.tk-public-site #features h3 { color:#20324e; font-size:16px; }
.tk-public-site #features p,.tk-public-site #about p,.tk-public-site #security p { font-size:13px; line-height:1.9; }
.tk-public-site .tk-icon-badge { background:#edf3ff; color:#4976c9; box-shadow:none; border-radius:11px; width:38px; height:38px; font-size:13px; }
.tk-public-site .faq-content { color:#66758e; font-size:13px; }
.tk-public-site #faq summary { color:#263a59; font-size:13px; }
.tk-public-site main > section:last-child > div { background:#edf2fc; border:1px solid #dee6f6; border-radius:20px; }
.tk-public-site main > section:last-child h2 { color:#213551; font-size:26px; }
.tk-public-site footer { color:#7f8fa8; font-size:11px; }
.tk-public-site #open-app-panel { background:#eaf5f0; color:#234c40; }
.tk-public-site #open-app-panel h2 { color:#234c40; }
.tk-public-site .portal-link-button { color:#3468ed; background:none; border-color:#e1e8f5; box-shadow:none; font-size:11px; }
body.portal-body { --text-main:#1c2e4a; --text-soft:#647590; --text-muted:#8290a6; --panel-bg:#fff; --panel-border:#e3eaf4; --tekno-cyan:#3468ed; --shadow-soft:0 4px 20px #203e7105; --shadow-glow:0 4px 20px #203e7105; --radius-xl:18px; --radius-lg:14px; background:#f7f9fd; color:var(--text-main); }
.portal-body::before { display:none; }
.portal-header { background:#ffffffed; border-bottom:1px solid #e4eaf4; backdrop-filter:blur(16px); }
.portal-header-inner { background:none; border:0; border-radius:0; min-height:83px; padding-top:14px; padding-bottom:14px; box-shadow:none; }
.portal-brand img { width:36px; height:36px; border-radius:10px; }
.portal-brand-title { color:#1c2e4a; font-size:18px; }
.portal-brand-subtitle { font-size:10px; color:#8290a6; }
.portal-nav a { color:#6e7e97; font-size:12px; }
.portal-card,.portal-hero { background:white; border-color:#e3eaf4; box-shadow:0 3px 12px #203e7103; }
.portal-hero h1 { color:#1b3052; font-size:34px; line-height:1.2; letter-spacing:-1px; }
.portal-hero p { color:#74839c; font-size:13px; line-height:1.85; }
.portal-kicker { color:#5e7db1; font-size:10px; letter-spacing:.5px; }
.portal-kicker-dot { background:#5284e9; box-shadow:none; }
.portal-card-title { color:#243855; font-size:19px; letter-spacing:-.4px; }
.portal-subtitle,.portal-help { color:#8290a6; font-size:11px; }
.portal-input-wrap label { font-size:11px; font-weight:600; color:#536884; }
.portal-input { background:#fbfcfe; border:1px solid #dfe7f3; color:#233b5e; border-radius:9px; font-size:13px; }
.portal-input:focus { border-color:#7298e9; box-shadow:0 0 0 3px #3468ed0c; }
.portal-button { background:#3468ed; color:white; box-shadow:none; border:1px solid #3468ed; border-radius:9px; font-size:12px; padding:12px 20px; }
.portal-secondary-button,.portal-link-button { background:white; color:#5c7398; border:1px solid #e0e8f5; border-radius:9px; box-shadow:none; font-size:12px; }
.portal-field { background:#f8faff; border:1px solid #e8edf6; border-radius:10px; }
.portal-field-label { color:#8595af; font-size:10px; }
.portal-field-value { color:#2a4163; font-size:13px; }
.portal-status.is-danger { background:#fff1f3; border-color:#f2d3dc; color:#a55465; }
.portal-status.is-warning { background:#fff9ec; border-color:#f3e5bf; color:#94753c; }
.portal-status.is-success { background:#edf9f4; border-color:#cfeee0; color:#348a69; }
.portal-footer { color:#96a3b6; font-size:10px; }
.portal-connection-notice { background:#fff8eb; border-color:#ead9b4; color:#92703d; }
.portal-mobile-panel { background:white; border-color:#e3eaf4; }
.portal-mobile-toggle { color:#3b547b; border-color:#dfe7f3; background:white; }
.portal-body[data-portal-page="login"] .portal-stack { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.portal-body[data-portal-page="login"] .portal-hero { grid-row:span 2; margin:0; padding:42px; border:0; background:#edf2fc; display:flex; flex-direction:column; justify-content:center; }
.portal-body[data-portal-page="login"] .portal-hero h1 { max-width:320px; margin-top:20px; }
.portal-body[data-portal-page="login"] .portal-card { padding:30px; }
.portal-body[data-portal-page="login"] .portal-inline-actions { align-items:center; }
@media(max-width:1023px) { .tk-public-site main > section:first-child { padding-top:35px; } .tk-public-site .tk-hero-grid { gap:35px; } .tk-product-scene { min-height:390px; } .tk-process-strip { margin:0 24px 25px; gap:20px; } }
@media(max-width:720px) { .tk-public-site .tk-hero-title { font-size:43px; letter-spacing:-2px; } .tk-public-site .tk-hero-grid > div:first-child > p { font-size:14px; } .tk-process-strip { grid-template-columns:1fr 1fr; padding:24px 0; } .tk-product-scene { min-height:365px; } .tk-contact-card { width:76%; padding:23px; } .tk-public-site header > div > div > div:first-child { height:72px; } .portal-body[data-portal-page="login"] .portal-stack { grid-template-columns:1fr; } .portal-body[data-portal-page="login"] .portal-hero { grid-row:auto; padding:28px; } .portal-body[data-portal-page="login"] .portal-hero h1 { font-size:28px; } .portal-body[data-portal-page="login"] .portal-card { padding:24px; } .portal-header-inner { min-height:72px; } }
