@import"https://fonts.googleapis.com/css2?family=Merriweather:wght@300;400;700;900&family=Karma:wght@300;400;500;600;700&display=swap";:root{--color-primary: #0149ac;--color-primary-hover: #013a8a;--color-secondary: #00A8E8;--color-secondary-hover:#0090c8;--color-orange: #FF6B00;--color-orange-hover: #e06000;--color-green: #2E7D32;--color-green-hover: #245e27;--color-bg: #F2F2F2;--color-surface: #ffffff;--color-surface-alt: #f7f8fa;--color-border: #e0e0e0;--color-text: #111111;--color-text-muted: #555555;--color-text-faint: #999999;--color-text-inverse: #ffffff;--color-nav-bg: #0149ac;--color-nav-text: #ffffff;--color-nav-link-hover: #00A8E8;--color-success: #2E7D32;--color-success-bg: #e8f5e9;--color-success-text: #1b5e20;--color-warning: #FF6B00;--color-warning-bg: #fff3e0;--color-warning-text: #bf360c;--color-error: #c0392b;--color-error-bg: #fdecea;--color-error-text: #922b21;--gradient-brand: linear-gradient(135deg, #0149ac 0%, #00A8E8 100%);--gradient-hero: linear-gradient(135deg, #013a8a 0%, #0149ac 50%, #00A8E8 100%);--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 12px rgba(0,0,0,.1);--shadow-lg: 0 8px 24px rgba(0,0,0,.12);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 14px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--font-display: "Merriweather", serif;--font-body: "Karma", serif;--text-xs: 11px;--text-sm: 13px;--text-base: 15px;--text-md: 17px;--text-lg: 20px;--text-xl: 26px;--text-2xl: 36px;--text-3xl: 48px;--transition-fast: .12s ease;--transition-base: .2s ease;--transition-slow: .35s ease}[data-theme=dark]{--color-primary: #4a90d9;--color-primary-hover: #6aaee8;--color-secondary: #00A8E8;--color-secondary-hover:#33bcee;--color-orange: #FF8C3A;--color-orange-hover: #ffa05a;--color-green: #4caf50;--color-green-hover: #66bb6a;--color-bg: #0f1117;--color-surface: #1a1d26;--color-surface-alt: #22263a;--color-border: #2c3040;--color-text: #e8eaf0;--color-text-muted: #9aa0b4;--color-text-faint: #5a6078;--color-text-inverse: #0f1117;--color-nav-bg: #0d1829;--color-nav-text: #e8eaf0;--color-nav-link-hover: #00A8E8;--color-success: #4caf50;--color-success-bg: #1b2e1c;--color-success-text: #a5d6a7;--color-warning: #FF8C3A;--color-warning-bg: #2e1f0e;--color-warning-text: #ffcc80;--color-error: #ef5350;--color-error-bg: #2e1212;--color-error-text: #ef9a9a;--gradient-brand: linear-gradient(135deg, #0d1829 0%, #1a3a6e 100%);--gradient-hero: linear-gradient(135deg, #0d1829 0%, #0149ac 60%, #00A8E8 100%);--shadow-sm: 0 1px 3px rgba(0,0,0,.4);--shadow-md: 0 4px 12px rgba(0,0,0,.5);--shadow-lg: 0 8px 24px rgba(0,0,0,.6)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:1.7;transition:background-color var(--transition-slow),color var(--transition-slow);min-height:100vh;overflow-x:hidden}img,video{max-width:100%;display:block}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-secondary)}ul,ol{list-style:none}button,input,textarea,select{font-family:var(--font-body);font-size:var(--text-base)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--color-text);line-height:1.2}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}h5{font-size:var(--text-md)}h6{font-size:var(--text-base)}p{margin-bottom:var(--space-4);color:var(--color-text)}.text-muted{color:var(--color-text-muted)}.text-faint{color:var(--color-text-faint)}.text-sm{font-size:var(--text-sm)}.text-xs{font-size:var(--text-xs)}.text-center{text-align:center}.text-upper{text-transform:uppercase;letter-spacing:.08em}.container{width:100%;max-width:1100px;margin:0 auto;padding:0 var(--space-5)}.page-layout{display:flex;align-items:flex-start;min-height:calc(100vh - 53px);overflow:visible}.left-placeholder{width:240px;border-right:1px solid var(--color-border);flex-shrink:0;transition:border-color var(--transition-base);position:sticky}.right-placeholder{width:280px;border-left:1px solid var(--color-border);flex-shrink:0;transition:border-color var(--transition-base)}.main-content{flex:1;max-width:900px;margin:0 auto;padding:var(--space-7) var(--space-5)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.nav{background:var(--color-nav-bg);color:var(--color-nav-text);border-bottom:1px solid rgba(255,255,255,.08);height:53px;display:flex;align-items:center;padding:0 var(--space-5);position:sticky;top:0;z-index:100;transition:background var(--transition-slow)}.nav a{color:var(--color-nav-text);font-size:var(--text-sm);font-weight:500;transition:color var(--transition-fast)}.nav a:hover{color:var(--color-nav-link-hover)}.nav-brand{font-family:var(--font-display);font-size:22px;color:var(--color-nav-text)!important}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:11px 20px;border:none;border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;cursor:pointer;text-decoration:none;transition:opacity var(--transition-fast),background var(--transition-fast),color var(--transition-fast);white-space:nowrap}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover);color:#fff;opacity:1}.btn-secondary{background:var(--color-secondary);color:#fff}.btn-secondary:hover{background:var(--color-secondary-hover);color:#fff;opacity:1}.btn-green{background:var(--color-green);color:#fff}.btn-green:hover{background:var(--color-green-hover);color:#fff;opacity:1}.btn-orange{background:var(--color-orange);color:#fff}.btn-orange:hover{background:var(--color-orange-hover);color:#fff;opacity:1}.btn-outline{background:transparent;color:var(--color-primary);border:1.5px solid var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:#fff}.btn-ghost{background:transparent;color:var(--color-text-muted);border:1.5px solid var(--color-border)}.btn-ghost:hover{border-color:var(--color-text);color:var(--color-text)}.btn-sm{padding:7px 14px;font-size:var(--text-xs)}.btn-lg{padding:14px 28px;font-size:var(--text-md)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-5);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.card-alt{background:var(--color-surface-alt)}.form{display:flex;flex-direction:column;gap:var(--space-4)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-label{font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em}input,textarea,select{width:100%;padding:12px 14px;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-slow)}input::placeholder,textarea::placeholder{color:var(--color-text-faint)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0149ac1f}textarea{line-height:1.6;resize:vertical}.badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600;font-family:var(--font-body);letter-spacing:.04em}.badge-blue{background:#0149ac1f;color:var(--color-primary)}.badge-sky{background:#00a8e81f;color:var(--color-secondary)}.badge-green{background:var(--color-success-bg);color:var(--color-success-text)}.badge-orange{background:var(--color-warning-bg);color:var(--color-warning-text)}.badge-gray{background:var(--color-surface-alt);color:var(--color-text-muted)}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);border-left:4px solid transparent}.alert-success{background:var(--color-success-bg);color:var(--color-success-text);border-left-color:var(--color-success)}.alert-warning{background:var(--color-warning-bg);color:var(--color-warning-text);border-left-color:var(--color-orange)}.alert-error{background:var(--color-error-bg);color:var(--color-error-text);border-left-color:var(--color-error)}.alert-info{background:#00a8e81a;color:var(--color-primary);border-left-color:var(--color-secondary)}hr{border:none;border-top:1px solid var(--color-border);margin:var(--space-6) 0}.divider-gradient{height:2px;background:var(--gradient-brand);border:none;border-radius:var(--radius-pill);margin:var(--space-6) 0}.hero{background:var(--gradient-hero);color:#fff;padding:var(--space-8) var(--space-5);text-align:center;border-radius:var(--radius-lg)}.hero h1,.hero h2{color:#fff}.hero p{color:#ffffffd1;max-width:560px;margin:0 auto var(--space-5)}.progress-bar{width:100%;height:6px;background:var(--color-border);border-radius:var(--radius-pill);overflow:hidden;position:sticky}.progress-fill{height:100%;background:var(--gradient-brand);border-radius:var(--radius-pill);transition:width .4s ease}.progress-fill-green{background:var(--color-green)}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.dot-published{background:var(--color-green)}.dot-draft{background:var(--color-border)}.dot-orange{background:var(--color-orange)}.dot-blue{background:var(--color-primary)}.theme-toggle{background:none;border:1.5px solid rgba(255,255,255,.3);border-radius:var(--radius-pill);color:var(--color-nav-text);padding:5px 12px;font-size:var(--text-xs);cursor:pointer;font-family:var(--font-body);transition:border-color var(--transition-fast),background var(--transition-fast)}.theme-toggle:hover{border-color:#ffffffb3;background:#ffffff14}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}::selection{background:#0149ac2e;color:var(--color-text)}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.rounded{border-radius:var(--radius-md)}.shadow{box-shadow:var(--shadow-md)}.w-full{width:100%}.blogs-list{display:flex;flex-direction:column;gap:2px;margin-top:1.5rem}.blog-row{display:flex;align-items:center;gap:14px;padding:13px 14px;border-radius:8px;text-decoration:none;color:inherit;border:1px solid transparent;transition:background .15s,border-color .15s}.blog-row:hover{background:var(--color-surface);border-color:var(--color-border)}.blog-row:hover .blog-arrow{color:var(--color-primary);transform:translate(3px)}.blog-index{font-size:11px;font-weight:700;color:var(--color-text-muted);min-width:22px;font-variant-numeric:tabular-nums;font-family:Karma,serif}.blog-title{flex:1;font-size:14.5px;font-weight:600;color:var(--color-text);line-height:1.4;font-family:Karma,serif}.blog-date{font-size:11.5px;color:var(--color-text-muted);white-space:nowrap;font-family:Karma,serif}.blog-arrow{font-size:13px;color:var(--color-text-muted);transition:color .15s,transform .15s}@media(max-width:540px){.blog-date{display:none}}@media(max-width:900px){pre{overflow-x:auto;max-width:100%;white-space:pre}pre code{white-space:pre}img{max-width:100%;height:auto}table{display:block;overflow-x:auto;max-width:100%}}@media(max-width:480px){.main-content{padding:var(--space-5) var(--space-4)}.btn-lg{width:100%;justify-content:center}}
