 .progress-bar{will-change:width}:root{--bg-body:#fafafa;--bg-surface:#fff;--bg-subtle:#f8fafc;--text-primary:#0f172a;--text-secondary:#1e293b;--text-tertiary:#334155;--accent-main:#2563eb;--accent-hover:#1e40af;--accent-subtle:#f5f5f5;--border-light:#e2e8f0;--border-focus:#93c5fd;--code-bg:#0f172a;--code-text:#f8fafc;--font-sans:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--space-3:clamp(1rem,2vw,1.5rem);--space-4:clamp(1.5rem,3vw,2rem);--space-5:clamp(2rem,4vw,3rem);--space-6:clamp(3rem,6vw,5rem);--text-sm:clamp(.875rem,1vw,.95rem);--text-base:clamp(1.05rem,1.2vw,1.15rem);--text-lg:clamp(1.2rem,1.5vw,1.35rem);--text-h3:clamp(1.5rem,2vw,1.75rem);--text-h1:clamp(1.75rem,5vw + .5rem,3.25rem);--text-h2:clamp(1.75rem,3vw,2.25rem);--radius-sm:6px;--radius-md:12px;--radius-lg:16px;--shadow-subtle:0 1px 3px rgba(15,23,42,.05);--shadow-hover:0 10px 25px -5px rgba(15,23,42,.08),0 8px 10px -6px rgba(15,23,42,.04);--nav-height:60px}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overscroll-behavior-y:none;overflow-x:hidden}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:1.8;color:var(--text-secondary);background:var(--bg-body);text-rendering:optimizeSpeed;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;display:flex;flex-direction:column;min-height:100vh;min-height:100svh;min-height:100dvh}h1,h2,h3,h4{color:var(--text-primary);font-weight:800;letter-spacing:-.02em;line-height:1.2;text-wrap:balance}p{text-wrap:pretty}img,svg{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{font:inherit;cursor:pointer;border:none;background:none}:focus-visible{outline:3px solid var(--border-focus);outline-offset:3px;border-radius:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.skip-link{position:absolute;left:-9999px;top:4px;background:var(--accent-main);color:#fff;padding:8px 16px;border-radius:4px;z-index:9999;font-weight:600}.skip-link:focus{left:4px}.progress-container{position:fixed;top:0;left:0;width:100%;height:3px;z-index:1001}.progress-bar{height:100%;background:var(--accent-main);width:0}.header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.98);border-bottom:1px solid rgba(226,232,240,.6);height:var(--nav-height);display:flex;align-items:center;contain:style;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.container{width:100%;max-width:1300px;margin:0 auto;padding:0 max(var(--space-4),env(safe-area-inset-left))}.nav-inner{display:flex;justify-content:space-between;align-items:center;width:100%}.logo{font-weight:800;font-size:1.25rem;color:var(--text-primary);letter-spacing:-.03em;display:flex;align-items:center;gap:8px}.logo-icon{color:var(--accent-main)}.desktop-nav{display:none;gap:2rem;align-items:center}.desktop-nav a{font-size:.95rem;font-weight:500;color:var(--text-tertiary)}.desktop-nav a:hover,.desktop-nav a[aria-current="page"]{color:var(--accent-main)}.btn-primary{background:var(--accent-main);color:#fff!important;padding:.6rem 1.2rem;border-radius:8px;font-weight:600;font-size:.9rem;box-shadow:0 4px 6px -1px rgba(37,99,235,.2);display:inline-block;transition:background .2s,transform .2s}.btn-primary:hover{background:var(--accent-hover);color:#fff!important;transform:translateY(-1px)}.mobile-toggle{display:flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:.5rem;color:var(--text-primary);touch-action:manipulation}.mobile-menu{display:none;flex-direction:column;position:absolute;top:var(--nav-height);left:0;width:100%;background:var(--bg-surface);padding:var(--space-4);border-bottom:1px solid var(--border-light);box-shadow:var(--shadow-hover)}.mobile-menu.is-active{display:flex;gap:var(--space-3)}.mobile-menu a{padding:.75rem 0;min-height:48px;display:flex;align-items:center;touch-action:manipulation}main{flex:1;min-height:calc(100svh - var(--nav-height))}.hero{padding:clamp(48px,10vh,100px) 20px;text-align:center}.hero h1{font-size:var(--text-h1);margin-bottom:16px}.hero p{max-width:700px;margin-inline:auto;color:var(--text-tertiary);font-size:clamp(.9rem,2vw,1rem)}.test-zone{padding-top:var(--space-5);padding-bottom:var(--space-5);max-width:1300px;border-bottom:1px solid var(--border-light)}.test-zone .article-title{text-align:center}.test-zone .article-excerpt{text-align:center;max-width:70ch;margin-left:auto;margin-right:auto}.test-zone .trust-bar{justify-content:center}.test-zone .category-badge{display:block;text-align:center}.test-zone .breadcrumb{justify-content:center}.typing-container{position:relative;background:#fff;width:100%;padding:2rem;border-radius:12px;box-shadow:0 10px 25px rgba(0,0,0,.1);min-height:500px;contain:layout style}.settings-bar{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px;align-items:center;justify-content:center;background:rgba(255,255,255,.9);padding:15px;border-radius:10px;box-shadow:0 5px 15px rgba(0,0,0,.05);min-height:70px;contain:layout style}.mode-dropdown-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;position:relative}.mode-dropdown-container label{font-size:12px;font-weight:600;color:#555}.mode-select{padding:8px 15px;border:2px solid #ddd;background:white;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;outline:none;transition:border-color .3s ease,box-shadow .3s ease;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 8px center;background-size:16px;padding-right:35px;min-width:100px}.mode-select.easy{border-color:#0e7a6f;color:#0e7a6f;background-color:#e8f8f5}.mode-select.medium{border-color:#c24fb1;color:#a03897;background-color:#fef3ff}.mode-select.hard{border-color:#d64073;color:#b33358;background-color:#fff0f3}.mode-select:hover{box-shadow:0 2px 8px rgba(0,0,0,.15)}.mode-select:disabled{opacity:.5;cursor:not-allowed}.switch{position:relative;display:inline-block;width:40px;height:22px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s}.slider:before{position:absolute;content:"";height:16px;width:16px;left:3px;bottom:3px;background-color:white;transition:.4s}input:checked+.slider{background-color:#2196F3}input:focus+.slider{box-shadow:0 0 1px #2196F3}input:checked+.slider:before{transform:translateX(18px)}.slider.round{border-radius:22px}.slider.round:before{border-radius:50%}.stats-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;background:#eef2ff;padding:1rem;border-radius:10px;font-weight:600;text-align:center;margin-bottom:1.5rem;box-sizing:border-box}.stats-bar>div{padding:.5rem;border-radius:8px;transition:background .3s ease,color .3s ease;min-height:58px}.stats-bar span{font-size:1.4rem;color:#1848b0;display:block;min-width:40px}.stats-bar div.time-critical{background-color:#fee2e2;color:#991b1b;animation:pulse 1s ease-in-out infinite;will-change:transform}.stats-bar div.time-critical span{color:#991b1b}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}.quote-display{margin-bottom:1.5rem;padding:1.5rem 1.75rem;background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;font-size:1.55rem;line-height:2.2;user-select:none;white-space:pre-wrap;max-height:340px;overflow-y:auto;scroll-behavior:smooth;scrollbar-width:thin;min-height:280px;contain:layout style;width:100%;box-sizing:border-box;cursor:text;transition:border-color .3s ease,box-shadow .3s ease;letter-spacing:.02em;font-family:'Inter',system-ui,-apple-system,sans-serif;word-break:break-word;position:relative}.quote-display:hover{border-color:#93c5fd}.quote-display.focused{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.15)}.quote-display span{position:relative;transition:color .1s ease}.quote-display span{color:#94a3b8}.quote-display span.correct{color:#15803d;background:none}.quote-display span.incorrect{color:#dc2626;text-decoration:underline;background-color:#fee2e2}.quote-display span.insertion-error{color:#dc2626;text-decoration:underline;background-color:#fee2e2}.quote-display span.half-error{color:#d97706;text-decoration:underline;background-color:#fef3c7;border-bottom:2px dotted #d97706}.quote-display span.active{color:#1e293b;border-left:2.5px solid #2563eb;background-color:rgba(37,99,235,.08);animation:cursorBlink 1s step-end infinite;border-radius:1px;margin-left:-1px;padding-left:2px}@keyframes cursorBlink{0%,100%{border-left-color:#2563eb}50%{border-left-color:transparent}}.quote-display .start-hint{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#94a3b8;font-size:1.1rem;font-weight:500;pointer-events:none;z-index:2;background:rgba(249,250,251,.9);padding:.75rem 1.5rem;border-radius:8px;border:1px dashed #cbd5e1;letter-spacing:.02em}.typing-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;z-index:-1}.action-buttons-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:20px;min-height:50px}.action-buttons-wrapper #restartBtn{grid-column:2}.submit-btn{background:#5a4fcc;background:linear-gradient(135deg,#5a4fcc 0%,#6b3d9a 100%);color:white;border:none;padding:12px 30px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;margin:0;display:block;transition:transform .3s ease,box-shadow .3s ease}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(90,79,204,.4)}.submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.action-btn{width:100%;margin:0;padding:.8rem;border:none;border-radius:8px;background:#1d4ed8;color:#fff;font-size:1rem;cursor:pointer;transition:background .2s ease}.action-btn:hover{background:#1e40af}.analytics-panel{display:none;background:white;border-radius:12px;padding:30px;margin:20px 0;box-shadow:0 4px 20px rgba(0,0,0,.1);contain:layout style}.analytics-header{text-align:center;margin-bottom:30px}.analytics-header h2{color:#222;margin-bottom:10px}.analytics-header p{color:#555}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-bottom:30px}.stat-card{background:#5a4fcc;background:linear-gradient(135deg,#5a4fcc 0%,#6b3d9a 100%);color:white;padding:20px;border-radius:10px;text-align:center}.stat-card.green{background:#0e7a6f;background:linear-gradient(135deg,#0e7a6f 0%,#2dbb6d 100%)}.stat-card.orange{background:#c24fb1;background:linear-gradient(135deg,#c24fb1 0%,#d04859 100%)}.stat-card.red{background:#d64073;background:linear-gradient(135deg,#d64073 0%,#e5b735 100%)}.stat-card-value{font-size:32px;font-weight:bold;margin:10px 0;color:#fff}.stat-card-label{font-size:14px;color:#fff}.chart-container{margin:30px 0;background:#f8f9fa;padding:20px;border-radius:10px}.chart-title{font-weight:600;margin-bottom:15px;color:#222}.chart-wrapper{position:relative;height:250px;max-height:250px;width:100%}#wpmChart{width:100%!important;height:250px!important;max-height:250px!important}.weakness-section{margin:30px 0}.weakness-card{background:#fff3cd;border-left:4px solid #f0ad00;padding:15px;margin:10px 0;border-radius:5px;color:#5c4200}.weakness-card.error{background:#f8d7da;border-left-color:#c00;color:#721c24}.weakness-card.slow{background:#d1ecf1;border-left-color:#0c7287;color:#0c5460}.key-analysis{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.key-badge{display:inline-block;padding:8px 15px;background:#e9ecef;border-radius:20px;font-weight:600;color:#333}.key-badge.error{background:#f8d7da;color:#721c24}.key-badge.slow{background:#d1ecf1;color:#0c5460}.comparison-container{margin-top:30px;display:none}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:15px}.comparison-content{border:1px solid #ddd;padding:15px;max-height:400px;overflow-y:auto;background:#fff;line-height:1.6;border-radius:8px;white-space:pre-wrap;font-family:'Consolas','Monaco','Courier New',monospace;font-size:.95rem}.legend{margin-top:15px;font-size:.9rem;display:flex;gap:10px;flex-wrap:wrap}.legend span{padding:2px 5px;border-radius:4px}.legend-full-error{background:#ffcccc;color:#cc0000}.legend-half-error{color:#e6ac00;font-weight:bold;border-bottom:2px dotted #e6ac00}.legend-correct{color:#28a745}.legend-added{background:#e6f3ff;color:#0066cc}.legend-substituted{background:#ffe6e6;color:#cc0000;text-decoration:line-through}.legend-repeated{background:#fff4cc;color:#996600;text-decoration:underline}.hl-miss{background:#ffcccc;color:#cc0000}.hl-half{color:#e6ac00;font-weight:bold;border-bottom:2px dotted #e6ac00}.hl-correct{color:#28a745}.hl-add-bg{background:#e6f3ff;color:#0066cc}.hl-sub-bg{background:#ffe6e6;color:#cc0000;text-decoration:line-through}.hl-repeat{background:#fff4cc;color:#996600;text-decoration:underline}.cheat-toast{position:fixed;top:20px;left:50%;transform:translateX(-50%) translateY(-120px);background:linear-gradient(135deg,#dc2626 0%,#991b1b 100%);color:#fff;padding:16px 32px;border-radius:12px;font-size:1rem;font-weight:600;box-shadow:0 8px 30px rgba(220,38,38,.45);z-index:9999;transition:transform .4s cubic-bezier(.34,1.56,.64,1),opacity .4s;opacity:0;pointer-events:none;text-align:center;max-width:90vw}.cheat-toast.show{transform:translateX(-50%) translateY(0);opacity:1}#paragraphSelect{width:250px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}#difficultySelect{width:120px}@media(max-width:768px){.comparison-grid{grid-template-columns:1fr}.quote-display{font-size:1.3rem;line-height:2;max-height:280px;min-height:220px;padding:1.25rem}}@media(max-width:640px){.stats-bar{grid-template-columns:repeat(2,1fr);gap:.5rem}.stats-bar>div{padding:.3rem}.typing-container{padding:1rem}.quote-display{font-size:1.15rem;line-height:1.9;max-height:240px;min-height:180px;padding:1rem}}.layout-grid{display:grid;grid-template-columns:1fr;gap:var(--space-5);padding:var(--space-5) 0}.sidebar{display:none}.article-content{width:100%;min-width:0;background:var(--bg-surface);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-subtle);border:1px solid var(--border-light);contain:content}.breadcrumb{display:flex;gap:.5rem;font-size:.875rem;color:var(--text-tertiary);margin-bottom:var(--space-4)}.breadcrumb a:hover{color:var(--accent-main)}.category-badge{display:inline-flex;align-items:center;background:var(--accent-subtle);color:#1e3a8a;font-size:.75rem;font-weight:700;padding:.4rem .8rem;border-radius:99px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-3)}.article-title{font-size:var(--text-h1);margin-bottom:var(--space-3)}.trust-bar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:var(--radius-sm);padding:.75rem 1rem;font-size:.82rem;color:#166534;margin-bottom:var(--space-4)}.trust-item{display:flex;align-items:center;gap:4px;font-weight:600}.trust-divider{color:#166534;opacity:.6}.editorial-disclaimer{background:#fffbeb;border:1px solid #fef3c7;color:#78350f;padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.85rem;margin-bottom:var(--space-4);display:flex;gap:.5rem}.editorial-disclaimer svg{flex-shrink:0;margin-top:2px}.article-excerpt{font-size:var(--text-lg);color:var(--text-tertiary);margin-bottom:var(--space-4)}.author-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);padding:var(--space-3) 0;margin-bottom:var(--space-5)}.author-profile{display:flex;align-items:center;gap:1rem}.author-avatar{width:48px;height:48px;border-radius:50%;background:#dbeafe;display:flex;align-items:center;justify-content:center;color:#1e3a8a;font-weight:bold;font-size:1.1rem;flex-shrink:0}.author-info strong{display:block;font-size:1rem;color:var(--text-primary);margin-bottom:.1rem}.author-info span{font-size:.85rem;color:var(--text-tertiary)}.author-credential{display:inline-flex;align-items:center;gap:4px;background:#dbeafe;color:#1e3a8a;font-size:.72rem;font-weight:700;padding:.25rem .55rem;border-radius:99px;letter-spacing:.04em;margin-top:4px}.featured-image{border-radius:var(--radius-md);overflow:hidden;margin-bottom:var(--space-5);background:var(--bg-subtle);border:1px solid var(--border-light);aspect-ratio:2/1;contain:layout paint}.prose{max-width:70ch;margin:0 auto}.prose>*+*{margin-top:1.5em}.prose h2{font-size:var(--text-h2);margin-top:2.5em;margin-bottom:1em;padding-bottom:.5rem;border-bottom:1px solid var(--bg-subtle);scroll-margin-top:calc(var(--nav-height) + 2rem)}.prose h3{font-size:var(--text-h3);margin-top:2em;margin-bottom:.75em;scroll-margin-top:calc(var(--nav-height) + 2rem)}.prose a{color:var(--accent-main);font-weight:500;border-bottom:1px solid transparent;transition:border-color .15s}.prose a:hover{border-bottom-color:var(--accent-main)}.prose ul,.prose ol{padding-left:1.5em}.prose li{margin-bottom:.5em;padding-left:.25em}.prose li::marker{color:var(--accent-main);font-weight:bold}.prose blockquote{border-left:4px solid var(--accent-main);padding:1.25rem;background:var(--bg-subtle);font-style:italic;font-size:var(--text-lg);color:var(--text-primary);border-radius:0 8px 8px 0;margin:2em 0}.prose pre{word-break:break-all;background:var(--code-bg);color:var(--code-text);padding:1.25rem;border-radius:var(--radius-md);overflow-x:auto;font-family:var(--font-mono);font-size:.875rem;line-height:1.6;margin:2em 0;-webkit-overflow-scrolling:touch}.prose code{background:var(--bg-subtle);color:var(--text-primary);padding:.2em .4em;border-radius:4px;font-family:var(--font-mono);font-size:.85em;border:1px solid var(--border-light)}.prose pre code{background:none;padding:0;border:none;color:inherit;font-size:inherit}.table-responsive{width:100%;overflow-x:auto;margin:2em 0;border-radius:8px;border:1px solid var(--border-light);-webkit-overflow-scrolling:touch}.prose table{width:100%;min-width:480px;border-collapse:collapse;text-align:left;font-size:.95rem}.prose th,.prose td{padding:.875rem 1.25rem;border-bottom:1px solid var(--border-light)}.prose th{background:var(--bg-subtle);font-weight:600;color:var(--text-primary)}.prose tr:last-child td{border-bottom:none}.key-takeaway{background:var(--accent-subtle);border-left:4px solid var(--accent-main);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:1.25rem 1.5rem;margin:2em 0;font-size:.95rem;color:var(--text-secondary)}.key-takeaway strong{color:var(--accent-hover);display:block;margin-bottom:.4rem;font-size:1rem}.post-footer{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border-light);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-4)}.tags{display:flex;gap:.5rem;flex-wrap:wrap}.tag{font-size:.85rem;font-weight:500;color:var(--text-secondary);padding:.4rem .8rem;background:var(--bg-subtle);border-radius:6px;border:1px solid var(--border-light);transition:background .15s,color .15s,border-color .15s}.tag:hover{background:#fff;color:var(--accent-main);border-color:var(--border-focus)}.author-bio-box{display:flex;gap:1.5rem;background:var(--bg-subtle);padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border-light);margin-top:var(--space-6);align-items:flex-start}.author-bio-avatar{width:72px;height:72px;border-radius:50%;flex-shrink:0;background:#1e3a8a;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.4rem;font-weight:bold}.author-bio-content h2{font-size:1.15rem;margin-top:0;margin-bottom:.5rem;color:var(--text-primary);border-bottom:none}.author-bio-content p{font-size:.9rem;color:var(--text-secondary);margin-bottom:.75rem;line-height:1.6}.author-bio-credentials{display:flex;flex-wrap:wrap;gap:.5rem}.credential-tag{font-size:.78rem;font-weight:600;padding:.3rem .7rem;background:#dbeafe;color:#1e3a8a;border-radius:99px}.fact-check-notice{display:flex;align-items:center;gap:.6rem;background:#f0fdf4;border:1px solid #86efac;border-radius:var(--radius-sm);padding:.6rem 1rem;font-size:.82rem;font-weight:600;color:#14532d;margin-top:var(--space-3)}.references-section{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-light)}.references-section h2{font-size:1.15rem;margin-top:0;margin-bottom:1rem;border-bottom:none}.references-section ol{padding-left:1.2rem;font-size:.875rem;color:var(--text-tertiary);list-style-type:decimal}.references-section li{margin-bottom:.5rem}.references-section a{color:var(--accent-main)}.sidebar-title{font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-bottom:var(--space-3);color:var(--text-primary)}.toc-list{display:flex;flex-direction:column;gap:.75rem;padding-left:1rem;margin-bottom:1rem;border-left:2px solid var(--border-light)}.toc-list a{font-size:.95rem;color:var(--text-tertiary);line-height:1.4;display:block;padding:2px 0;transition:color .15s,transform .15s}.toc-list a:hover{color:var(--accent-main);transform:translateX(2px)}.toc-list .nested{padding-left:1rem;margin-top:.75rem;border-left:1px solid var(--border-light)}.widget-card{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:var(--shadow-subtle);transition:border-color .2s,box-shadow .2s}.widget-card:hover{border-color:#cbd5e1;box-shadow:var(--shadow-hover)}.trending-list{display:flex;flex-direction:column;gap:1.25rem}.trending-list li a{font-weight:600;font-size:1rem;color:var(--text-primary);line-height:1.4;display:block;margin-bottom:.3rem}.trending-list li a:hover{color:var(--accent-main)}.trending-meta{font-size:.85rem;color:var(--text-tertiary)}.site-footer{background:#0f172a;color:#f8fafc;padding:clamp(3rem,6vw,5rem) 0 clamp(1.5rem,3vw,2rem);padding-bottom:max(clamp(1.5rem,3vw,2rem),env(safe-area-inset-bottom))}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:clamp(2rem,4vw,3rem);margin-bottom:clamp(2rem,4vw,3rem)}.footer-col h2{font-size:1rem;font-weight:600;margin-bottom:1.25rem;margin-top:0;color:#fff;text-transform:uppercase;letter-spacing:.05em}.footer-links{display:flex;flex-direction:column;gap:.75rem;font-size:.95rem}.footer-links a{color:#e2e8f0}.footer-links a:hover{color:#fff;text-decoration:underline}.footer-bottom{border-top:1px solid #334155;padding-top:clamp(1.5rem,3vw,2rem);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;font-size:.875rem;color:#e2e8f0;gap:1rem}.back-to-top{position:fixed;bottom:1.5rem;right:1.5rem;bottom:max(1.5rem,env(safe-area-inset-bottom,1.5rem));width:44px;height:44px;border-radius:50%;background:var(--text-primary);color:#fff;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;z-index:99;box-shadow:var(--shadow-hover);border:2px solid #fff;touch-action:manipulation;transition:opacity .25s,visibility .25s,background-color .2s,transform .2s}.back-to-top.visible{opacity:1;visibility:visible}.back-to-top:hover{background:var(--accent-main);transform:translateY(-3px)}.back-to-top svg{width:20px;height:20px;fill:currentColor}@media (max-width:768px){.article-content{padding:var(--space-4);border-radius:0;border-left:none;border-right:none;contain:layout}.author-bio-box{flex-direction:column;text-align:center;align-items:center}.author-bio-credentials{justify-content:center}}@media (min-width:1024px){:root{--nav-height:72px}.header{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:rgba(255,255,255,.95)}.desktop-nav{display:flex}.mobile-toggle{display:none}.mobile-menu{display:none!important}.layout-grid{grid-template-columns:minmax(auto,860px) 320px;justify-content:center;align-items:start;gap:var(--space-6);padding:var(--space-6) 0}.sidebar{display:flex;flex-direction:column;gap:var(--space-4);position:sticky;top:calc(var(--nav-height) + var(--space-5));content-visibility:auto;contain-intrinsic-size:auto 620px}}@media print{.header,.sidebar,.back-to-top,.progress-container{display:none!important}.layout-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}.progress-container{display:none}}*{-webkit-tap-highlight-color:rgba(37,99,235,.12)}a,button{touch-action:manipulation}