astro-island{display:contents}:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#f8fafc;background:#020617}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,#0f2a55 0,#020617 38% 100%);min-height:100vh;display:flex;flex-direction:column}.container{max-width:1180px;margin:0 auto;padding:0 22px;flex:1;width:100%}.header{position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(148,163,184,.18);background:#020617c7;backdrop-filter:blur(16px)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px;background:none;border:0;color:#fff;font-weight:800;font-size:20px;cursor:pointer}.brand img{width:44px;height:44px;border-radius:12px}nav{display:flex;gap:10px}nav button,nav a,.navLink,.lang,.adminHead button{background:#0f172ab3;border:1px solid rgba(148,163,184,.18);color:#cbd5e1;border-radius:12px;padding:10px 14px;cursor:pointer;text-decoration:none;font-size:14px;display:inline-flex;align-items:center}nav button:hover,nav a:hover,.navLink:hover,.adminHead button:hover{border-color:#38bdf8;color:#fff;transition:.2s ease-in-out}.lang{display:flex;gap:7px;align-items:center}.hero{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;padding:70px 0 34px}.hero h1{font-size:56px;line-height:1.02;margin:14px 0;background:linear-gradient(90deg,#fff,#7dd3fc);-webkit-background-clip:text;color:transparent;padding-bottom:5px;padding-right:5px}.hero p{font-size:18px;color:#b6c2d3;max-width:660px}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#38bdf8;background:#0ea5e91f;border:1px solid rgba(14,165,233,.25);padding:8px 12px;border-radius:999px;font-weight:700;font-size:13px}.primary{background:linear-gradient(135deg,#0ea5e9,#2563eb);border:0;color:#fff;border-radius:12px;padding:12px 18px;font-weight:800;cursor:pointer;box-shadow:0 16px 40px #2563eb3d}.ipCard,.panel,.admin,.newsletter,.linkedin,.article,.tool,.editor{background:linear-gradient(180deg,#0f172af0,#0f172ab8);border:1px solid rgba(148,163,184,.18);box-shadow:0 24px 80px #00000047;border-radius:24px}.ipCard{padding:26px;display:flex;align-items:center;justify-content:space-between;gap:14px}.ipCard h2{font-family:ui-monospace,monospace;font-size:30px;word-break:break-all}.ipCard p,.muted{color:#94a3b8}section{margin:34px 0}h2{font-size:28px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tool{text-align:left;padding:22px;color:#e5eefb;cursor:pointer;transition:.2s}.tool:hover{transform:translateY(-2px);border-color:#38bdf8}.tool svg{color:#38bdf8}.tool strong{display:block;margin:14px 0 8px;font-size:18px}.tool span,.article span,.article small{color:#94a3b8;font-size:13px}.linkedin{padding:16px;overflow:hidden}.linkedin iframe{width:100%;border:0;border-radius:16px;background:#fff}.articles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.article{padding:22px}.article h3{font-size:21px;margin:12px 0}.article p{color:#cbd5e1}.newsletter{padding:28px;display:flex;align-items:center;justify-content:space-between;gap:18px}.newsletter div,.formrow{display:flex;gap:12px}input,select,textarea{width:100%;border:1px solid rgba(148,163,184,.22);background:#020617;color:#e2e8f0;border-radius:12px;padding:12px 14px}textarea{min-height:160px}pre{white-space:pre-wrap;background:#020617;border:1px solid rgba(148,163,184,.18);border-radius:16px;padding:18px;color:#cbd5e1;overflow:auto}.panel,.admin{padding:28px}.admin{max-width:860px;margin:40px auto}.admin input,.admin textarea,.admin select{margin:8px 0}.adminHead{display:flex;justify-content:space-between;align-items:center}.editor{padding:22px;margin:20px 0}.footer{border-top:1px solid rgba(148,163,184,.18);margin-top:60px;color:#94a3b8}.footer .container{display:flex;gap:10px;align-items:center;padding-top:28px;padding-bottom:28px}.footer img{width:30px;height:30px;border-radius:8px}@media(max-width:850px){.hero,.grid,.articles{grid-template-columns:1fr}.hero h1{font-size:38px}.nav{height:auto;flex-wrap:wrap;padding:12px 22px}nav{order:3;width:100%;overflow:auto}.newsletter{display:block}.newsletter div,.formrow{flex-direction:column}.ipCard{display:block}}.embedBox{margin-top:16px;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.12);background:#fff}.embedBox iframe{display:block;width:100%;max-width:100%}.blogHeader{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.blogHeader h2{margin:0}.blogSearch{display:flex;align-items:center;gap:10px;background:#0f172ad9;border:1px solid rgba(148,163,184,.22);border-radius:14px;padding:10px 16px;min-width:260px;transition:.2s}.blogSearch:focus-within{border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf81f}.blogSearch svg{color:#94a3b8;flex-shrink:0}.blogSearch input{border:none;background:transparent;padding:0;width:100%;font-size:14px;color:#e2e8f0}.blogSearch input::placeholder{color:#64748b}.blogFilters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.filterPill{background:#0f172ab8;border:1px solid rgba(148,163,184,.2);color:#94a3b8;border-radius:999px;padding:7px 16px;font-size:13px;font-weight:700;cursor:pointer;transition:.2s}.filterPill:hover{border-color:#38bdf8;color:#e2e8f0}.filterPill.active{background:linear-gradient(135deg,#0ea5e938,#2563eb38);border-color:#38bdf8;color:#7dd3fc}.categoryChip{background:#0ea5e940;border:1px solid rgba(56,189,248,.4);color:#bae6fd;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:800;letter-spacing:.3px}.readTimeChip{color:#94a3b8;font-size:12px}.articleMeta{display:flex;gap:10px;align-items:center;margin-bottom:10px;flex-wrap:wrap}.heroPost{display:grid;grid-template-columns:1fr 1fr;gap:0;background:linear-gradient(180deg,#0f172af5,#0f172acc);border:1px solid rgba(148,163,184,.18);border-radius:24px;overflow:hidden;cursor:pointer;transition:.25s;margin-bottom:8px}.heroPost:hover{border-color:#38bdf8;transform:translateY(-3px);box-shadow:0 28px 60px #00000059}.heroPostImage{overflow:hidden;min-height:280px}.heroPostImage img{width:100%;height:100%;object-fit:cover;display:block;transition:.35s}.heroPost:hover .heroPostImage img{transform:scale(1.04)}.heroPostBody{padding:36px 32px;display:flex;flex-direction:column;justify-content:center;gap:14px}.heroPostMeta{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.heroPostTitle{font-size:26px;line-height:1.25;margin:0;color:#f8fafc}.heroPostExcerpt{color:#94a3b8;line-height:1.7;margin:0;font-size:15px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.heroPostFooter{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:8px;padding-top:16px;border-top:1px solid rgba(148,163,184,.12)}.readMoreBtn{color:#38bdf8;font-weight:800;font-size:14px;letter-spacing:.3px;transition:.2s}.heroPost:hover .readMoreBtn{letter-spacing:.6px}.article{cursor:pointer;transition:.25s}.article:hover{transform:translateY(-4px)}.articleCover{width:100%;height:190px;object-fit:cover;border-radius:12px;margin-bottom:12px}.loadMoreBtn{display:inline-flex;align-items:center;gap:8px;background:#0f172ae6;border:1px solid rgba(56,189,248,.35);color:#dbeafe;border-radius:14px;padding:14px 28px;font-weight:800;font-size:15px;cursor:pointer;transition:.2s}.loadMoreBtn:hover{border-color:#38bdf8;color:#fff;background:#1e293bfa}.postPage{max-width:900px;margin:0 auto;padding-bottom:60px}.breadcrumb{display:flex;align-items:center;gap:6px;font-size:13px;color:#64748b;margin:0 0 20px;flex-wrap:wrap}.breadcrumbLink{background:none;border:none;color:#94a3b8;cursor:pointer;padding:0;font-size:13px;transition:.15s}.breadcrumbLink:hover{color:#38bdf8}.breadcrumbCurrent{color:#e2e8f0;font-weight:600;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.postMetaRow{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.postByline{color:#94a3b8;font-size:14px;margin:8px 0 20px}.postByline strong{color:#cbd5e1}.postCover{width:100%;max-height:460px;object-fit:cover;object-position:center;border-radius:20px;margin-bottom:28px}.lead{font-size:19px;color:#94a3b8;line-height:1.7;margin-bottom:28px;border-left:3px solid #38bdf8;padding-left:18px}.postContent{line-height:1.85;color:#cbd5e1;font-size:16.5px}.postContent h1,.postContent h2,.postContent h3,.postContent h4{color:#f8fafc;margin:2em 0 .7em;line-height:1.25}.postContent h2{font-size:24px;border-bottom:1px solid rgba(148,163,184,.15);padding-bottom:10px}.postContent h3{font-size:20px}.postContent h4{font-size:17px;color:#e2e8f0}.postContent p{margin:0 0 1.2em}.postContent a{color:#38bdf8;text-decoration:underline;text-underline-offset:3px}.postContent a:hover{color:#7dd3fc}.postContent ul,.postContent ol{padding-left:24px;margin-bottom:1.2em}.postContent li{margin-bottom:.5em}.postContent blockquote{border-left:4px solid #38bdf8;background:#0ea5e914;border-radius:0 12px 12px 0;padding:16px 20px;margin:1.5em 0;color:#94a3b8;font-style:italic}.postContent pre{background:#020617;border:1px solid rgba(148,163,184,.18);border-radius:14px;padding:20px;overflow:auto;font-size:14px;margin:1.5em 0}.postContent code{background:#0f172acc;border:1px solid rgba(148,163,184,.15);border-radius:6px;padding:2px 7px;font-size:14px;color:#7dd3fc;font-family:ui-monospace,monospace}.postContent pre code{background:none;border:none;padding:0;color:#e2e8f0}.postContent hr{border:none;border-top:1px solid rgba(148,163,184,.15);margin:2em 0}.postContent table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:14px}.postContent th{background:#0f172ad9;color:#93c5fd;padding:12px 16px;text-align:left;font-weight:700;border-bottom:2px solid rgba(148,163,184,.18)}.postContent td{padding:11px 16px;border-bottom:1px solid rgba(148,163,184,.1);color:#e5e7eb}.postContent tr:hover td{background:#0f172a66}.shareBar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:40px 0 0;padding:20px 24px;background:#0f172ab8;border:1px solid rgba(148,163,184,.15);border-radius:18px}.shareLabel{color:#94a3b8;font-size:13px;font-weight:700;margin-right:4px}.shareBtn{display:inline-flex;align-items:center;gap:7px;border-radius:10px;padding:8px 14px;font-size:13px;font-weight:700;cursor:pointer;text-decoration:none;transition:.2s;border:1px solid transparent}.shareLinkedIn{background:#0a66c22e;border-color:#0a66c259;color:#60a5fa}.shareLinkedIn:hover{background:#0a66c24d;border-color:#60a5fa;color:#fff}.shareX{background:#ffffff14;border-color:#ffffff26;color:#e2e8f0}.shareX:hover{background:#ffffff26;color:#fff}.shareCopy{background:#38bdf81a;border-color:#38bdf840;color:#38bdf8}.shareCopy:hover{background:#38bdf833;border-color:#38bdf8;color:#fff}.relatedPosts{margin-top:52px;padding-top:32px;border-top:1px solid rgba(148,163,184,.12)}.relatedTitle{font-size:20px;color:#f8fafc;margin:0 0 20px}.relatedGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.relatedCard{background:linear-gradient(180deg,#0f172af0,#0f172ab8);border:1px solid rgba(148,163,184,.16);border-radius:18px;overflow:hidden;cursor:pointer;transition:.25s}.relatedCard:hover{transform:translateY(-3px);border-color:#38bdf8}.relatedCover{width:100%;height:130px;object-fit:cover;display:block}.relatedBody{padding:16px;display:flex;flex-direction:column;gap:8px}.relatedBody h4{font-size:14px;line-height:1.4;color:#f8fafc;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.postSkeleton{padding:20px 0}.skeletonBar{background:linear-gradient(90deg,#0f172acc 25%,#1e293b99,#0f172acc 75%);background-size:200% 100%;animation:shimmer 1.6s infinite;border-radius:10px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.smallEmbed iframe{height:420px}.article .embedBox{margin-top:14px}@media(max-width:850px){.heroPost{grid-template-columns:1fr}.heroPostImage{min-height:220px}.heroPostBody{padding:24px 20px}.heroPostTitle{font-size:22px}.relatedGrid{grid-template-columns:1fr}.blogSearch{min-width:unset;width:100%}.blogHeader{flex-direction:column;align-items:flex-start}.breadcrumbCurrent{max-width:200px}}@media(max-width:600px){.shareBar{padding:16px}}.resultGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.resultCard{background:#0f172ad9;border:1px solid rgba(148,163,184,.18);border-radius:18px;padding:22px}.resultCard span{display:block;color:#94a3b8;font-size:13px;margin-bottom:8px}.resultCard strong{display:block;color:#f8fafc;font-size:24px}.speedHead{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:26px}.speedGauges{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:28px 0}.gaugeCard{background:linear-gradient(180deg,#0f172af5,#0f172ac7);border:1px solid rgba(148,163,184,.22);border-radius:24px;padding:24px;text-align:center}.gaugeCard h3{margin:0 0 10px;font-size:18px}.gaugeScale{width:220px;margin:0 auto 8px;display:flex;justify-content:space-between;color:#cbd5e1;font-size:12px;font-weight:700}.gauge{width:100%;max-width:260px;height:170px;margin:0 auto}.gaugeBg{fill:none;stroke:#ffffff1a;stroke-width:18;stroke-linecap:round}.gaugeValue{fill:none;stroke:#38bdf8;stroke-width:18;stroke-linecap:round;filter:drop-shadow(0 0 10px rgba(56,189,248,.45))}.needle{stroke:#fff;stroke-width:5;stroke-linecap:round;filter:drop-shadow(0 0 8px rgba(255,255,255,.55))}.needleCenter{fill:#fff}.gaugeNumber{margin-top:-40px;font-size:40px;font-weight:900;color:#fff}.gaugeUnit{color:#38bdf8;font-size:16px;font-weight:800}.gaugeStatus{margin-top:8px;font-weight:700;color:#fff}.connectionPanel{margin-top:26px;background:#0f172ab8;border:1px solid rgba(148,163,184,.18);border-radius:22px;padding:24px}.connectionPanel h2{margin-top:0;font-size:22px}.connectionGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.connectionGrid div{background:#0206178c;border:1px solid rgba(148,163,184,.14);border-radius:16px;padding:16px}.connectionGrid span{display:block;color:#94a3b8;font-size:12px;margin-bottom:8px}.connectionGrid strong{display:block;color:#f8fafc;font-size:15px;word-break:break-word}.diagnosisPanel{margin-top:26px;background:linear-gradient(180deg,#0ea5e924,#0f172ac7);border:1px solid rgba(56,189,248,.28);border-radius:22px;padding:24px}.diagnosisPanel h2{margin-top:0;font-size:22px}.diagnosisPanel p{color:#dbeafe;line-height:1.7;margin-bottom:0}.ipCardFull{display:block}.ipCardTop{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.ipMiniGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.ipMiniGrid div{background:#02061773;border:1px solid rgba(148,163,184,.14);border-radius:14px;padding:13px}.ipMiniGrid span{display:block;color:#94a3b8;font-size:12px;margin-bottom:6px}.ipMiniGrid strong{display:block;color:#f8fafc;font-size:14px;word-break:break-word}@media(max-width:650px){.connectionGrid{grid-template-columns:1fr}}.speedActions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.secondaryButton{background:#0f172af2;border:1px solid rgba(56,189,248,.45);color:#dbeafe;border-radius:14px;padding:13px 18px;font-weight:800;font-size:14px;cursor:pointer;box-shadow:0 12px 30px #38bdf81f}.secondaryButton:hover{border-color:#38bdf8;color:#fff;background:#1e293bfa}.dnsTable{width:100%;overflow:hidden;border:1px solid rgba(148,163,184,.22);border-radius:16px}.dnsTableHead,.dnsTableRow{display:grid;grid-template-columns:90px 1.2fr 2fr 90px;gap:12px;padding:14px 16px;align-items:center}.dnsTableHead{background:#0f172adb;color:#93c5fd;font-size:13px;font-weight:800}.dnsTableRow{border-top:1px solid rgba(148,163,184,.14);color:#e5e7eb;font-size:13px;word-break:break-word}.dnsTableRow span:first-child{color:#38bdf8;font-weight:800}@media(max-width:700px){.dnsTableHead{display:none}.dnsTableRow{grid-template-columns:1fr}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-out forwards}.btn-refresh{display:inline-flex;align-items:center;gap:6px;background:#0f172ab3;border:1px solid rgba(148,163,184,.25);color:#94a3b8;border-radius:12px;padding:9px 14px;font-size:13px;font-weight:600;cursor:pointer;transition:.2s;white-space:nowrap}.btn-refresh:hover{border-color:#38bdf8;color:#fff;background:#1e293be6}.btn-refresh:disabled{opacity:.5;cursor:not-allowed}.danger{background:#ef444414;border:1px solid rgba(239,68,68,.4);color:#fca5a5;border-radius:12px;padding:9px 16px;font-size:13px;font-weight:600;cursor:pointer;transition:.2s}.danger:hover{background:#ef44442e;border-color:#ef4444;color:#fff}@media(max-width:768px){.nav nav{flex-wrap:wrap;justify-content:center;gap:8px}.filterPill{padding:6px 12px;font-size:13px}.editor{padding:16px}.adminHead{flex-direction:column;align-items:flex-start!important}}.formrow,.input-group{display:flex;gap:12px;align-items:center;width:100%;margin:18px 0}.formrow input,.input-group input{flex:1!important;min-width:0!important;width:auto!important;border:1px solid rgba(148,163,184,.3);background:#020617d9;color:#f8fafc;border-radius:12px;padding:14px 18px;font-size:15px;transition:all .2s ease}.formrow input:focus,.input-group input:focus,input:focus,select:focus,textarea:focus{outline:none;border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf833}.formrow select,.input-group select{width:auto!important;flex-shrink:0;border:1px solid rgba(148,163,184,.3);background:#020617d9;color:#f8fafc;border-radius:12px;padding:14px 18px;font-size:15px}.formrow button,.input-group button,button.primary{flex-shrink:0;white-space:nowrap;background:linear-gradient(135deg,#0ea5e9,#2563eb);border:0;color:#fff;border-radius:12px;padding:14px 24px;font-weight:700;font-size:15px;cursor:pointer;box-shadow:0 8px 24px #2563eb4d;transition:all .2s ease-in-out;display:inline-flex;align-items:center;justify-content:center}.formrow button:hover:not(:disabled),.input-group button:hover:not(:disabled),button.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 32px #2563eb73;background:linear-gradient(135deg,#38bdf8,#2563eb)}.formrow button:disabled,.input-group button:disabled,button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.secondaryButton,.btn-small{background:#0f172ab3;border:1px solid rgba(148,163,184,.25);color:#cbd5e1;border-radius:10px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.secondaryButton:hover,.btn-small:hover{border-color:#38bdf8;color:#fff}.result-box,.diagnosisPanel{background:#02061799;border:1px solid rgba(148,163,184,.18);border-radius:16px;padding:24px;margin-top:24px}@media(max-width:640px){.formrow,.input-group{flex-direction:column;align-items:stretch}.formrow input,.input-group input,.formrow select,.input-group select,.formrow button,.input-group button{width:100%}}input[type=checkbox],input[type=radio]{width:18px!important;height:18px!important;max-width:18px!important;margin:0!important;padding:0!important;cursor:pointer;accent-color:#0ea5e9;flex-shrink:0!important}
