*{margin:0;padding:0;box-sizing:border-box}button,.btn,a{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}input{-webkit-tap-highlight-color:transparent;-webkit-user-select:text;user-select:text}input:focus-visible{outline:none!important;border-color:var(--accent);box-shadow:0 0 0 3px #3b82f626}input:focus:not(:focus-visible){outline:none!important;border-color:var(--accent);box-shadow:0 0 0 3px #3b82f626}*{transition:all .3s cubic-bezier(.4,0,.2,1)}button,.btn{transition:all .2s cubic-bezier(.4,0,.2,1)}.result-block,.link-item,.modal{transition:all .4s cubic-bezier(.4,0,.2,1)}:root,[data-theme=light]{--bg-primary: #f0f4f8;--bg-secondary: #e2e8f0;--bg-card: #ffffff;--bg-input: #f8fafc;--accent: #3b82f6;--accent-hover: #2563eb;--accent-light: #dbeafe;--text-primary: #1e293b;--text-secondary: #64748b;--border: #cbd5e1;--border-light: #e2e8f0;--danger: #ef4444;--success: #22c55e;--shadow: rgba(0, 0, 0, .08);--shadow-lg: rgba(0, 0, 0, .12)}[data-theme=dark]{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-card: #1e293b;--bg-input: #334155;--accent: #3b82f6;--accent-hover: #60a5fa;--accent-light: rgba(59, 130, 246, .2);--text-primary: #f1f5f9;--text-secondary: #94a3b8;--border: #475569;--border-light: #334155;--danger: #f87171;--success: #4ade80;--shadow: rgba(0, 0, 0, .3);--shadow-lg: rgba(0, 0, 0, .4)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Inter,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;transition:background-color .3s,color .3s}body.tg-webapp{background:var(--bg-primary);color:var(--text-primary)}body.tg-webapp[style*=--tg-theme-bg-color]{background:var(--tg-theme-bg-color)}body.tg-webapp[style*=--tg-theme-text-color]{color:var(--tg-theme-text-color)}#root{min-height:100vh;padding-bottom:env(safe-area-inset-bottom,80px)}.app{max-width:100%;margin:0 auto;padding:12px}.header{display:flex;justify-content:space-between;align-items:center;padding:16px;margin-bottom:16px;background:var(--bg-card);border-radius:16px;box-shadow:0 2px 12px var(--shadow)}.header h1{font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:10px;color:var(--text-primary)}.header h1 svg{width:28px;height:28px;color:var(--accent)}.header-controls{display:flex;align-items:center;gap:12px}.theme-toggle{width:42px;height:42px;border-radius:12px;border:2px solid var(--border-light);background:var(--bg-input);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.theme-toggle:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.theme-toggle svg{width:22px;height:22px}.lang-switch{display:flex;gap:4px;background:var(--bg-input);padding:4px;border-radius:10px;border:1px solid var(--border-light)}.lang-btn{padding:8px 14px;border:none;background:transparent;color:var(--text-secondary);border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s}.lang-btn.active{background:var(--accent);color:#fff;box-shadow:0 2px 8px #3b82f64d}.nav-tabs{display:flex;gap:8px;margin-bottom:16px;background:var(--bg-card);padding:8px;border-radius:14px;box-shadow:0 2px 12px var(--shadow)}.nav-tab{flex:1;padding:12px 16px;border:none;background:transparent;color:var(--text-secondary);border-radius:10px;cursor:pointer;font-size:.95rem;font-weight:600;transition:background .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:8px}.nav-tab:hover{background:var(--accent-light);color:var(--accent)}.nav-tab.active{background:var(--accent);color:#fff;box-shadow:0 2px 8px #3b82f64d}.nav-tab svg{width:20px;height:20px;transition:none;color:inherit}.card{background:var(--bg-card);border-radius:16px;padding:20px;margin-bottom:16px;box-shadow:0 2px 12px var(--shadow);border:1px solid var(--border-light)}.card-title{font-size:1rem;font-weight:700;margin-bottom:16px;display:flex;align-items:center;gap:10px;color:var(--text-primary)}.card-title svg{width:22px;height:22px;color:var(--accent)}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:8px;font-weight:600}input[type=text],input[type=url],input[type=email],textarea{width:100%;padding:14px 16px;background:var(--bg-input);border:2px solid var(--border-light);border-radius:12px;color:var(--text-primary);font-size:1rem;transition:all .2s;caret-color:var(--text-primary)}input::placeholder,textarea::placeholder{color:var(--text-secondary);opacity:.5}input:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #3b82f626}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border:none;border-radius:12px;font-size:.9rem;font-weight:600;cursor:pointer;text-decoration:none;white-space:nowrap;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;min-height:44px;outline:none!important;-webkit-tap-highlight-color:transparent!important;tap-highlight-color:transparent!important;transition:all .2s cubic-bezier(.4,0,.2,1);transform:scale(1)}.btn.btn-reset{transform:scale(1)!important;background:var(--bg-secondary)!important;border-color:var(--border-light)!important;color:var(--text-primary)!important;box-shadow:0 1px 3px #0000000d!important}.btn-primary.btn-reset{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%)!important;color:#fff!important;border-color:var(--accent)!important}.btn-danger.btn-reset{background:var(--danger)!important;color:#fff!important;border-color:var(--danger)!important}@media (hover: hover) and (pointer: fine){.btn:hover:not(.btn-reset){transform:translateY(-1px) scale(1);box-shadow:0 4px 12px #00000026}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px #3b82f626}.btn-primary:focus-visible{outline:2px solid rgba(255,255,255,.8);outline-offset:2px;box-shadow:0 0 0 4px #3b82f640}.btn-danger:focus-visible{outline:2px solid rgba(239,68,68,.8);outline-offset:2px;box-shadow:0 0 0 4px #ef444426}}.btn:active:not(.btn-reset){transform:scale(.96)!important;transition:transform .05s cubic-bezier(.4,0,.2,1)!important}.btn:focus{outline:none!important}@media (hover: none) and (pointer: coarse){.btn{-webkit-tap-highlight-color:rgba(0,0,0,0)!important;tap-highlight-color:rgba(0,0,0,0)!important;-webkit-user-select:none!important;user-select:none!important;touch-action:manipulation}.btn:hover{transform:none!important;box-shadow:none!important}.btn:active:not(.btn-reset){transform:scale(.96)!important;transition:transform .05s!important}.btn:focus,.btn:focus-visible,.btn:focus-within{outline:none!important;box-shadow:none!important;border-color:inherit!important;background:inherit!important}}.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);color:#fff;box-shadow:0 2px 8px #3b82f64d}.btn-primary:hover{box-shadow:0 4px 16px #3b82f666;filter:brightness(1.05)}.btn-primary:active{filter:brightness(.95)}.btn-primary:disabled{background:var(--border);cursor:not-allowed;transform:none;filter:none;opacity:.6}.btn-secondary{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-light)!important;box-shadow:0 1px 3px #0000001a}.btn-secondary:hover{background:var(--accent-light);border-color:var(--accent)!important;color:var(--accent)}.btn-secondary:active{background:var(--accent-light);border-color:var(--accent)!important}.btn-danger{background:var(--danger);color:#fff;box-shadow:0 2px 8px #ef44444d}.btn-danger:hover{box-shadow:0 4px 16px #ef444466;filter:brightness(1.05)}.btn-danger:active{filter:brightness(.95)}.btn-sm{padding:8px 12px!important;font-size:.85rem!important;min-height:36px!important;border-radius:8px}.btn-icon{width:44px!important;height:44px!important;padding:0!important;border-radius:12px;flex-shrink:0}.btn-icon-sm{width:36px!important;height:36px!important;padding:0!important;border-radius:8px;flex-shrink:0}.result-block{background:var(--bg-card);border-radius:16px;padding:20px;margin-top:20px;border:2px solid var(--accent);box-shadow:0 4px 16px #3b82f61a;opacity:0;transform:translateY(30px) scale(.95);animation:resultAppear .5s cubic-bezier(.4,0,.2,1) forwards}@keyframes resultAppear{to{opacity:1;transform:translateY(0) scale(1)}}.result-url{font-size:1rem;font-weight:700;color:var(--accent);word-break:break-all;margin-bottom:8px;line-height:1.4}.result-target{font-size:.85rem;color:var(--text-secondary);margin-bottom:16px;line-height:1.3;opacity:.8}.result-actions{display:flex;gap:8px;flex-wrap:wrap}.result-actions .btn{flex:1;min-width:0}.result-actions .btn-icon{flex:0 0 auto}.result-actions .btn{-webkit-tap-highlight-color:transparent!important;touch-action:manipulation}@media (hover: none) and (pointer: coarse){.result-actions .btn:hover{transform:none!important;box-shadow:none!important}.result-actions .btn-primary:hover{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%)!important;box-shadow:0 2px 8px #3b82f64d!important}.result-actions .btn-secondary:hover{background:var(--bg-input)!important;border-color:var(--border-light)!important;color:var(--text-primary)!important}[data-theme=dark] .result-actions .btn-secondary:hover{background:var(--bg-input)!important;border-color:var(--border)!important}.result-actions .btn:focus,.result-actions .btn:focus-visible{outline:none!important}}@media (max-width: 480px){.result-block{padding:16px;margin-top:16px}.result-actions{gap:6px}.result-actions .btn{font-size:.8rem;padding:8px 12px;min-height:36px}}.link-item{background:var(--bg-card);border-radius:16px;padding:18px;margin-bottom:14px;border:1px solid var(--border-light);box-shadow:0 2px 8px #0000000a;opacity:0;transform:translateY(20px);animation:slideInUp .4s cubic-bezier(.4,0,.2,1) forwards}.link-item:hover{border-color:var(--accent);box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.link-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.link-item-url{font-weight:700;color:var(--accent);font-size:1rem;word-break:break-all;flex:1;line-height:1.4}.link-item-target{font-size:.85rem;color:var(--text-secondary);margin-top:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;line-height:1.3;opacity:.8}.link-item-meta{display:flex;gap:16px;margin-bottom:16px;font-size:.8rem;color:var(--text-secondary);flex-wrap:wrap;padding:8px 0;border-bottom:1px solid var(--border-light)}.link-item-meta span{display:flex;align-items:center;gap:4px;font-weight:500}@media (max-width: 480px){.link-item{padding:16px;margin-bottom:12px}.link-item-url{font-size:.95rem}.link-item-target{font-size:.8rem}.link-item-meta{gap:12px;font-size:.75rem;padding:6px 0}}.link-item-actions{display:flex;flex-direction:column;gap:12px;margin-top:16px}.link-actions-row{display:flex;gap:10px;align-items:stretch}.link-actions-row:first-child{display:grid;grid-template-columns:1fr 1fr;gap:10px}.link-actions-row:first-child .btn{justify-content:center;padding:10px 12px;font-size:.85rem;font-weight:500;min-height:40px;white-space:nowrap}.link-actions-row:last-child{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:center}.link-actions-row:last-child .btn:not(.link-delete-btn){justify-content:center;padding:10px 12px;font-size:.85rem;font-weight:500;min-height:40px}.link-delete-btn{width:40px!important;height:40px!important;padding:0!important;border-radius:10px!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important;margin:0!important}.link-item-actions .btn{border:1px solid var(--border-light)!important;background:var(--bg-secondary)!important;color:var(--text-primary)!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important;box-shadow:0 1px 3px #0000000d!important;-webkit-tap-highlight-color:transparent!important;outline:none!important}@media (hover: hover) and (pointer: fine){.link-item-actions .btn:hover{border-color:var(--accent)!important;background:var(--accent-light)!important;color:var(--accent)!important;transform:translateY(-1px)!important;box-shadow:0 2px 8px #0000001a!important}}.link-item-actions .btn:active{transform:scale(.96)!important;box-shadow:0 1px 3px #0000000d!important;transition:transform .05s!important}@media (hover: none) and (pointer: coarse){.link-item-actions .btn{-webkit-tap-highlight-color:rgba(0,0,0,0)!important;touch-action:manipulation}.link-item-actions .btn:hover{transform:none!important;border-color:var(--border-light)!important;background:var(--bg-secondary)!important;color:var(--text-primary)!important;box-shadow:0 1px 3px #0000000d!important}[data-theme=dark] .link-item-actions .btn:hover{border-color:var(--border)!important;background:var(--bg-input)!important;color:var(--text-primary)!important}.link-item-actions .btn:active{transform:scale(.96)!important;transition:transform .05s!important}.link-item-actions .btn:focus,.link-item-actions .btn:focus-visible{outline:none!important;box-shadow:0 1px 3px #0000000d!important;border-color:var(--border-light)!important;background:var(--bg-secondary)!important;color:var(--text-primary)!important}[data-theme=dark] .link-item-actions .btn:focus,[data-theme=dark] .link-item-actions .btn:focus-visible{border-color:var(--border)!important;background:var(--bg-input)!important;color:var(--text-primary)!important}}.link-delete-btn{background:#ef44441a!important;border-color:#ef44444d!important;color:var(--danger)!important}.link-delete-btn:hover{background:var(--danger)!important;border-color:var(--danger)!important;color:#fff!important;transform:translateY(-1px)!important;box-shadow:0 2px 8px #ef44444d!important}.link-delete-btn:active{transform:translateY(0)!important;box-shadow:0 1px 3px #ef444433!important}@media (max-width: 480px){.link-item-actions{gap:10px;margin-top:14px}.link-actions-row,.link-actions-row:first-child{gap:8px}.link-actions-row:last-child{gap:8px}.link-actions-row .btn{font-size:.8rem!important;padding:8px 10px!important;min-height:36px!important}.link-delete-btn{width:36px!important;height:36px!important}}[data-theme=dark] .link-item-actions .btn{background:var(--bg-input)!important;border-color:var(--border)!important;color:var(--text-primary)!important}[data-theme=dark] .link-item-actions .btn:hover{border-color:var(--accent)!important;background:var(--accent-light)!important;color:var(--accent)!important}[data-theme=dark] .link-delete-btn{background:#ef444426!important;border-color:#ef444466!important;color:var(--danger)!important}.stats-card{background:var(--bg-input);border-radius:12px;padding:16px;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.stats-card-value{font-size:1.5rem;font-weight:700;color:var(--accent);transition:all .5s cubic-bezier(.4,0,.2,1)}.stats-card-value.updating{animation:numberPulse .5s cubic-bezier(.4,0,.2,1)}@keyframes numberPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.7}}.stats-card-label{font-size:.8rem;color:var(--text-secondary);margin-top:4px;transition:all .3s cubic-bezier(.4,0,.2,1)}.stats-period-selector{background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-secondary) 100%);border-radius:16px;padding:20px;margin-bottom:24px;border:2px solid var(--border-light);box-shadow:0 4px 16px #0000000f;transition:all .3s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .stats-period-selector{background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-input) 100%);border-color:var(--border);box-shadow:0 4px 16px #0000004d}.stats-period-header{display:flex;align-items:center;gap:10px;font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid var(--border-light)}[data-theme=dark] .stats-period-header{border-bottom-color:var(--border)}.stats-period-header svg{color:var(--accent);flex-shrink:0}.stats-period-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.stats-period-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background:var(--bg-card);border:2px solid var(--border-light);border-radius:12px;color:var(--text-primary);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;min-height:48px;-webkit-tap-highlight-color:transparent;touch-action:manipulation}[data-theme=dark] .stats-period-btn{background:var(--bg-input);border-color:var(--border)}@media (hover: hover) and (pointer: fine){.stats-period-btn:hover:not(:disabled):not(.active){border-color:var(--accent);background:var(--accent-light);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f633}}.stats-period-btn.active{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%);border-color:var(--accent);color:#fff;box-shadow:0 4px 16px #3b82f666;transform:translateY(-2px)}[data-theme=dark] .stats-period-btn.active{box-shadow:0 4px 16px #3b82f680}.stats-period-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (hover: none) and (pointer: coarse){.stats-period-btn:hover{transform:none!important;border-color:var(--border-light)!important;background:var(--bg-card)!important;box-shadow:none!important}[data-theme=dark] .stats-period-btn:hover{background:var(--bg-input)!important;border-color:var(--border)!important}.stats-period-btn.active:hover{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%)!important;border-color:var(--accent)!important;color:#fff!important;box-shadow:0 4px 16px #3b82f666!important;transform:translateY(-2px)!important}.stats-period-btn:active:not(:disabled){transform:scale(.98)!important;transition:transform .05s!important}}.period-icon{font-size:1.1rem;flex-shrink:0}.period-label{flex:1;text-align:center}.period-check{font-size:.9rem;font-weight:700;color:#fff;background:#fff3;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stats-custom-range{margin-top:16px;padding-top:16px;border-top:2px solid var(--border-light);animation:slideInDown .3s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .stats-custom-range{border-top-color:var(--border)}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.custom-range-inputs{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.custom-range-input-group{flex:1;min-width:180px}.custom-range-label{display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;color:var(--text-secondary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.custom-range-label svg{color:var(--accent)}.custom-range-date-input{width:100%;padding:12px 14px;background:var(--bg-card);border:2px solid var(--border-light);border-radius:10px;color:var(--text-primary);font-size:.9rem;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer}[data-theme=dark] .custom-range-date-input{background:var(--bg-input);border-color:var(--border);color-scheme:dark}.custom-range-date-input:hover{border-color:var(--accent)}.custom-range-date-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #3b82f626}.custom-range-date-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.7;transition:opacity .2s;filter:none}[data-theme=dark] .custom-range-date-input::-webkit-calendar-picker-indicator{filter:invert(1)}.custom-range-date-input::-webkit-calendar-picker-indicator:hover{opacity:1}.custom-range-separator{font-size:1.2rem;color:var(--accent);font-weight:700;margin-top:24px;flex-shrink:0}.stats-apply-btn{width:100%;max-width:250px;padding:12px 20px!important;font-size:.9rem!important;font-weight:600!important;display:flex;align-items:center;justify-content:center;gap:8px}@media (max-width: 768px){.stats-period-buttons{grid-template-columns:repeat(2,1fr)}.stats-period-btn{padding:10px 12px;font-size:.8rem;min-height:44px}.period-icon{font-size:1rem}.custom-range-inputs{flex-direction:column;gap:12px}.custom-range-input-group{width:100%;min-width:100%}.custom-range-separator{margin-top:0;transform:rotate(90deg)}.stats-apply-btn{max-width:100%}}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.stats-list{margin-top:12px}.stats-list-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:var(--bg-input);border-radius:8px;margin-bottom:6px;font-size:.9rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000;animation:fadeIn .3s cubic-bezier(.4,0,.2,1)}.modal-overlay.closing{animation:fadeOut .3s cubic-bezier(.4,0,.2,1) forwards}.modal{background:var(--bg-card);border-radius:20px;padding:24px;width:100%;max-width:420px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0003;animation:scaleIn .3s cubic-bezier(.4,0,.2,1)}.modal-overlay.closing .modal{animation:scaleOut .3s cubic-bezier(.4,0,.2,1) forwards}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.modal h2{margin-bottom:20px;font-size:1.2rem;color:var(--text-primary)}.btn-group{display:flex;gap:12px;margin-top:16px}.btn-group .btn{flex:1}.toast{position:fixed;bottom:100px;left:50%;width:fit-content;max-width:calc(100vw - 40px);min-width:200px;background:var(--bg-card);color:var(--text-primary);padding:16px 24px;border-radius:16px;box-shadow:0 8px 32px #0003;z-index:1001;border:1px solid var(--border-light);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;font-weight:500;font-size:.95rem;margin-left:-100px;opacity:0;transform:translateY(20px);transition:opacity .3s ease,transform .3s ease}.toast.show{opacity:1;transform:translateY(0)}.toast.success{background:linear-gradient(135deg,var(--success) 0%,#10b981 100%);color:#fff;border:none;box-shadow:0 8px 32px #22c55e66}.toast.error{background:linear-gradient(135deg,var(--danger) 0%,#dc2626 100%);color:#fff;border:none;box-shadow:0 8px 32px #ef444466}.toast.hiding{opacity:0;transform:translateY(20px)}.spinner{width:20px;height:20px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:40px 20px;color:var(--text-secondary)}.empty-state svg{width:60px;height:60px;margin-bottom:16px;opacity:.5;color:var(--accent)}.btn-sm{padding:8px 12px;font-size:.85rem;width:auto}.modal-large{max-width:90vw;width:800px;max-height:90vh}.period-selector{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.period-btn{padding:6px 12px;font-size:.8rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-input);color:var(--text-secondary);cursor:pointer;transition:all .2s}.period-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.period-btn:hover{border-color:var(--accent);color:var(--accent)}.mini-chart{margin-bottom:16px}.mini-chart-title{font-size:.9rem;font-weight:500;margin-bottom:8px;color:var(--text-secondary)}.chart-bar{display:flex;align-items:center;gap:8px;margin-bottom:4px}.chart-label{min-width:80px;font-size:.8rem;color:var(--text-secondary)}.chart-bar-container{flex:1;height:16px;background-color:var(--bg-secondary);border-radius:8px;overflow:hidden}.chart-bar-fill{height:100%;border-radius:8px;transition:width .3s ease}.chart-value{min-width:40px;font-size:.8rem;text-align:right}input[type=date]{padding:8px 10px;border-radius:6px;border:1px solid var(--border);background:var(--bg-input);color:var(--text-primary);font-size:.85rem;font-family:inherit;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-user-select:text;user-select:text;touch-action:manipulation}input[type=date]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #3b82f626}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6;transition:opacity .2s}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}[data-theme=dark] input[type=date]{background:var(--bg-input);border-color:var(--border);color:var(--text-primary);color-scheme:dark}[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1)}.btn.refreshing{pointer-events:none}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.links-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:0 4px}.links-header h2{margin:0;font-size:1.3rem;font-weight:700;color:var(--text-primary)}.links-header .btn{width:auto!important;padding:8px 12px!important;font-size:.85rem!important;min-height:36px!important;gap:6px}.btn.refreshing{pointer-events:none;opacity:.7}.btn.refreshing .spinner{animation:spin 1s linear infinite}.btn:not(:hover):not(:active):not(.refreshing):not(:focus-visible){transform:translateY(0)!important}@media (max-width: 768px){.modal-large{width:95vw;padding:16px}.stats-grid{grid-template-columns:1fr}.link-item-actions{flex-wrap:wrap}.btn-group{flex-direction:column}.header{padding:12px}.header h1{font-size:1.1rem}.nav-tab{padding:10px 12px;font-size:.85rem}}[data-theme=dark] .chart-bar-container{background-color:var(--bg-secondary)}[data-theme=dark] input[type=date]{background:var(--bg-input);border-color:var(--border);color:var(--text-primary)}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.card{animation:scaleIn .3s cubic-bezier(.4,0,.2,1)}.nav-tabs{animation:slideInUp .4s cubic-bezier(.4,0,.2,1)}.header,.toast{animation:slideInUp .3s cubic-bezier(.4,0,.2,1)}.modal{animation:scaleIn .3s cubic-bezier(.4,0,.2,1)}.link-item:nth-child(1){animation-delay:.1s}.link-item:nth-child(2){animation-delay:.2s}.link-item:nth-child(3){animation-delay:.3s}.link-item:nth-child(4){animation-delay:.4s}.link-item:nth-child(5){animation-delay:.5s}.btn:disabled .spinner{margin-right:8px}.btn:focus{outline:none}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:active{transform:translateY(1px)}.btn-primary:active{transform:translateY(-1px)}input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #3b82f626}.link-item-target{max-width:300px}@media (max-width: 480px){.link-item-target{max-width:200px}}[data-theme=dark] .btn-secondary{background:var(--bg-input);color:var(--text-primary);border:2px solid var(--border)}[data-theme=dark] .btn-secondary:hover{border-color:var(--accent);background:var(--accent-light);color:var(--accent)}[data-theme=dark] .btn-icon{border:2px solid var(--border)}[data-theme=dark] .btn-icon:hover{border-color:var(--accent);background:var(--accent-light)}.modal-close-btn{width:auto!important;padding:8px 12px!important;font-size:1.2rem!important;min-width:40px;border:2px solid var(--border)!important}[data-theme=dark] .modal-close-btn{border-color:var(--border)!important;background:var(--bg-secondary)!important}[data-theme=dark] .modal-close-btn:hover{border-color:var(--danger)!important;background:#ef44441a!important;color:var(--danger)!important}.btn-sm{border:1px solid var(--border-light)}.result-actions .btn{border:2px solid var(--border-light)}[data-theme=dark] .result-actions .btn{border-color:var(--border)}[data-theme=dark] .result-actions .btn:hover{border-color:var(--accent)}.link-item-actions .btn{border:1px solid var(--border-light)}[data-theme=dark] .link-item-actions .btn{border-color:var(--border);background:var(--bg-secondary)}[data-theme=dark] .link-item-actions .btn:hover{border-color:var(--accent);background:var(--accent-light)}.btn-danger{background:var(--danger)!important;color:#fff!important;border:2px solid var(--danger)!important;font-weight:600}.btn-danger:hover{background:var(--danger)!important;color:#fff!important;border-color:var(--danger)!important;filter:brightness(1.1);transform:translateY(-1px)}[data-theme=dark] .btn-danger{background:var(--danger)!important;color:#fff!important;border:2px solid var(--danger)!important}[data-theme=dark] .btn-danger:hover{background:var(--danger)!important;color:#fff!important;border-color:var(--danger)!important;filter:brightness(1.1);transform:translateY(-1px)}.btn-sm{padding:8px 12px!important;font-size:.85rem!important;font-weight:500;min-height:36px;display:flex;align-items:center;justify-content:center}[data-theme=dark] .btn-sm{border-color:var(--border)}[data-theme=dark] .btn-sm:hover{border-color:var(--accent)}.advanced-stats-section{margin-top:24px;border-radius:16px;overflow:hidden;border:2px solid var(--border-light);background:var(--bg-card);box-shadow:0 2px 12px #0000000d;transition:all .3s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .advanced-stats-section{border-color:var(--border);box-shadow:0 2px 12px #0003}.advanced-stats-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:18px 20px;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-input) 100%);border:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);gap:12px;-webkit-tap-highlight-color:transparent;touch-action:manipulation;outline:none}[data-theme=dark] .advanced-stats-toggle{background:linear-gradient(135deg,var(--bg-input) 0%,var(--bg-secondary) 100%)}.advanced-stats-toggle:hover{background:linear-gradient(135deg,var(--accent-light) 0%,var(--bg-secondary) 100%)}[data-theme=dark] .advanced-stats-toggle:hover{background:linear-gradient(135deg,var(--accent-light) 0%,var(--bg-input) 100%)}.advanced-stats-toggle:active{transform:scale(.99)}.advanced-stats-toggle-content{display:flex;align-items:flex-start;gap:12px;flex:1;min-width:0}.advanced-stats-toggle-content svg{color:var(--accent);flex-shrink:0;width:20px;height:20px;margin-top:2px}.advanced-stats-title{font-size:1rem;font-weight:600;color:var(--text-primary);flex:1;text-align:left;line-height:1.3;word-wrap:break-word;overflow-wrap:break-word;min-width:0}.advanced-stats-badge{font-size:.75rem;font-weight:600;color:var(--accent);background:var(--accent-light);padding:4px 10px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;flex-shrink:0}.advanced-stats-arrow{color:var(--text-secondary);transition:transform .3s cubic-bezier(.4,0,.2,1);flex-shrink:0;width:20px;height:20px}.advanced-stats-arrow.open{transform:rotate(180deg)}.advanced-stats-content{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1),padding .4s cubic-bezier(.4,0,.2,1);padding:0}.advanced-stats-content.open{max-height:3000px;padding:20px;border-top:2px solid var(--border-light)}[data-theme=dark] .advanced-stats-content.open{border-top-color:var(--border)}.advanced-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;animation:fadeInUp .5s cubic-bezier(.4,0,.2,1)}.advanced-stats-item{background:var(--bg-input);border-radius:12px;padding:16px;border:1px solid var(--border-light);transition:all .3s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .advanced-stats-item{background:var(--bg-secondary);border-color:var(--border)}.advanced-stats-item:hover{border-color:var(--accent);box-shadow:0 4px 16px #3b82f61a;transform:translateY(-2px)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.advanced-stats-section{margin-top:20px}.advanced-stats-toggle{padding:16px}.advanced-stats-title{font-size:.9rem}.advanced-stats-badge{font-size:.7rem;padding:3px 8px}.advanced-stats-content.open{padding:16px}.advanced-stats-grid{grid-template-columns:1fr;gap:16px}.advanced-stats-item{padding:14px}}@media (max-width: 420px){.advanced-stats-toggle{padding:14px 16px;gap:8px}.advanced-stats-toggle-content{gap:8px}.advanced-stats-toggle-content svg{width:18px;height:18px}.advanced-stats-title{font-size:.85rem}.advanced-stats-badge{font-size:.65rem;padding:2px 6px}.advanced-stats-arrow{width:18px;height:18px}.advanced-stats-content.open{padding:16px}.advanced-stats-item{padding:12px}}@media (max-width: 360px){.advanced-stats-toggle{padding:12px 14px;gap:6px}.advanced-stats-toggle-content{gap:6px}.advanced-stats-toggle-content svg{width:16px;height:16px}.advanced-stats-title{font-size:.8rem}.advanced-stats-badge{display:none}.advanced-stats-arrow{width:16px;height:16px}.advanced-stats-content.open{padding:14px}.advanced-stats-item{padding:10px}}
