@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Geist+Mono:wght@300;400;500&family=Outfit:wght@300;400;500;600;700&display=swap";:root{--radius: 16px;--radius-sm: 10px;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Outfit", sans-serif;--font-mono: "Geist Mono", monospace;--transition: .28s cubic-bezier(.4,0,.2,1);--transition-spring: .5s cubic-bezier(.34,1.56,.64,1)}[data-theme=dark]{--bg:#0d0d0d;--bg-2:#141414;--bg-3:#1a1a1a;--surface:#171717;--surface-2:#1f1f1f;--surface-3:#282828;--border:#2a2a2a;--border-2:#333;--text:#f0ece4;--text-2:#a09890;--text-3:#6b6560;--gold:#c9a96e;--gold-dim:#8a6f45;--cream:#f5f0e8;--ink:#1c1a18;--success:#7ea87e;--danger:#c47c6a;--glow:rgba(201,169,110,.12);--shadow-lg:0 32px 80px rgba(0,0,0,.7);--shadow-md:0 12px 40px rgba(0,0,0,.5);--shadow-sm:0 4px 16px rgba(0,0,0,.4);--nav-bg:rgba(13,13,13,.85)}[data-theme=light]{--bg:#f7f4ef;--bg-2:#f0ece4;--bg-3:#e8e2d8;--surface:#faf8f4;--surface-2:#f2ede6;--surface-3:#e9e3d9;--border:#d8d0c4;--border-2:#ccc5b8;--text:#1c1a18;--text-2:#5a5448;--text-3:#8a8278;--gold:#9a7040;--gold-dim:#c9a96e;--cream:#1c1a18;--ink:#f5f0e8;--success:#4a7a4a;--danger:#9a4a3a;--glow:rgba(154,112,64,.08);--shadow-lg:0 32px 80px rgba(0,0,0,.15);--shadow-md:0 12px 40px rgba(0,0,0,.1);--shadow-sm:0 4px 16px rgba(0,0,0,.08);--nav-bg:rgba(247,244,239,.9)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden;transition:background var(--transition),color var(--transition)}.bg-canvas{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}.bg-canvas:before{content:"";position:absolute;inset:0;background-image:radial-gradient(ellipse 70% 60% at 15% 10%,var(--glow) 0%,transparent 60%),radial-gradient(ellipse 50% 50% at 85% 90%,var(--glow) 0%,transparent 60%)}.bg-canvas:after{content:"";position:absolute;inset:-50%;width:200%;height:200%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23g)' opacity='0.035'/%3E%3C/svg%3E")}.bg-grid{position:fixed;inset:0;pointer-events:none;z-index:0;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:64px 64px;opacity:.25;-webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 0%,transparent 100%);mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 0%,transparent 100%)}#app-root{position:relative;z-index:1}nav.app-nav{position:sticky;top:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:0 40px;height:66px;background:var(--nav-bg);-webkit-backdrop-filter:blur(24px) saturate(1.4);backdrop-filter:blur(24px) saturate(1.4);border-bottom:1px solid var(--border);transition:background var(--transition),border-color var(--transition)}.logo{font-family:var(--font-display);font-size:1.65rem;font-weight:600;letter-spacing:.02em;color:var(--text);cursor:pointer;display:flex;align-items:center;gap:2px;-webkit-user-select:none;user-select:none;transition:opacity var(--transition);background:none;border:none}.logo:hover{opacity:.7}.logo em{font-style:italic;font-weight:300;color:var(--gold)}.logo-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--gold);margin-left:3px;margin-bottom:8px;animation:breathe 3s ease-in-out infinite}@keyframes breathe{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.6)}}.nav-right{display:flex;align-items:center;gap:10px}.theme-toggle{width:38px;height:38px;border-radius:50%;border:1px solid var(--border);background:transparent;color:var(--text-2);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all var(--transition);flex-shrink:0}.theme-toggle:hover{border-color:var(--gold);color:var(--gold);transform:rotate(20deg)}.page-in{animation:pageIn .45s cubic-bezier(.4,0,.2,1)}@keyframes pageIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 22px;border-radius:var(--radius-sm);font-family:var(--font-body);font-weight:500;font-size:.875rem;cursor:pointer;border:none;transition:all var(--transition);text-decoration:none;white-space:nowrap;letter-spacing:.01em;position:relative;overflow:hidden;color:inherit}.btn:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.08) 0%,transparent 60%);opacity:0;transition:opacity var(--transition)}.btn:hover:after{opacity:1}.btn-gold{background:var(--gold);color:var(--ink);box-shadow:0 4px 20px #c9a96e4d;font-weight:600}.btn-gold:hover{transform:translateY(-2px);box-shadow:0 8px 32px #c9a96e73;filter:brightness(1.08)}.btn-gold:active{transform:translateY(0)}.btn-outline{background:transparent;color:var(--text-2);border:1px solid var(--border)}.btn-outline:hover{border-color:var(--gold);color:var(--gold);background:var(--glow)}.btn-ghost{background:transparent;color:var(--text-3);padding:10px 16px}.btn-ghost:hover{color:var(--text)}.btn-subtle{background:var(--surface-3);color:var(--text-2);border:1px solid var(--border)}.btn-subtle:hover{border-color:var(--gold);color:var(--gold)}.btn-sm{padding:8px 16px;font-size:.8rem}.btn-full{width:100%}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important}label.field-label{font-size:.7rem;font-family:var(--font-mono);color:var(--text-3);letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:8px}input.field,select.field{width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-mono);font-size:.875rem;padding:12px 16px;outline:none;transition:all var(--transition);-webkit-appearance:none}input.field::placeholder{color:var(--text-3)}input.field:focus,select.field:focus{border-color:var(--gold);background:var(--surface);box-shadow:0 0 0 3px var(--glow),inset 0 1px #ffffff0a}.hero{min-height:calc(100vh - 66px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center}.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;padding:7px 18px;border:1px solid var(--border);border-radius:100px;font-family:var(--font-mono);font-size:.7rem;color:var(--text-3);letter-spacing:.12em;text-transform:uppercase;margin-bottom:40px;animation:slideIn .6s cubic-bezier(.4,0,.2,1) both}.hero-eyebrow-dot{width:5px;height:5px;border-radius:50%;background:var(--gold);animation:breathe 2s ease-in-out infinite}@keyframes slideIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.hero-title{font-family:var(--font-display);font-size:clamp(3rem,8vw,7rem);font-weight:300;letter-spacing:-.01em;line-height:1.05;margin-bottom:28px;animation:slideIn .7s .1s cubic-bezier(.4,0,.2,1) both}.hero-title em{font-style:italic;color:var(--gold)}.hero-sub{font-size:1.05rem;color:var(--text-2);max-width:460px;line-height:1.7;font-weight:300;margin-bottom:56px;animation:slideIn .7s .2s cubic-bezier(.4,0,.2,1) both}.shorten-box{width:100%;max-width:680px;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:32px;box-shadow:var(--shadow-lg);animation:slideIn .7s .3s cubic-bezier(.4,0,.2,1) both;position:relative}.shorten-box:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:60%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.5}.input-row{display:flex;gap:12px;margin-bottom:14px}.input-group{display:flex;flex-direction:column}.options-row{display:flex;gap:12px;margin-bottom:14px;animation:slideIn .3s ease}.box-footer{display:flex;gap:10px;align-items:center}.options-btn{width:42px;height:42px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--text-3);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:all var(--transition);flex-shrink:0}.options-btn:hover,.options-btn.active{border-color:var(--gold);color:var(--gold);background:var(--glow)}.result-card{margin-top:20px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:20px;animation:resultIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes resultIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.result-label{font-family:var(--font-mono);font-size:.65rem;color:var(--success);letter-spacing:.15em;text-transform:uppercase;margin-bottom:12px;display:flex;align-items:center;gap:8px}.result-label:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--success)}.result-url-row{display:flex;align-items:center;gap:12px;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px}.result-url-text{flex:1;font-family:var(--font-mono);font-size:.9rem;color:var(--gold);word-break:break-all}.auth-wrap{min-height:calc(100vh - 66px);display:flex;align-items:center;justify-content:center;padding:40px 20px}.auth-card{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:44px;box-shadow:var(--shadow-lg);position:relative}.auth-card:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:40%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.5}.auth-title{font-family:var(--font-display);font-size:2.2rem;font-weight:400;letter-spacing:-.01em;margin-bottom:6px}.auth-title em{font-style:italic;color:var(--gold)}.auth-sub{font-size:.875rem;color:var(--text-3);margin-bottom:36px}.form-group{margin-bottom:20px}.form-footer{margin-top:28px;text-align:center;font-size:.85rem;color:var(--text-3)}.form-footer a{color:var(--gold);cursor:pointer;text-decoration:none;font-weight:500;transition:opacity var(--transition)}.form-footer a:hover{opacity:.7}.dashboard{max-width:1120px;margin:0 auto;padding:56px 28px}.dash-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:40px;gap:16px;flex-wrap:wrap}.dash-title{font-family:var(--font-display);font-size:2.8rem;font-weight:300;letter-spacing:-.01em;line-height:1}.dash-title em{font-style:italic;color:var(--gold)}.dash-sub{font-size:.875rem;color:var(--text-3);margin-top:8px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px 28px;transition:border-color var(--transition),transform var(--transition);position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--glow) 0%,transparent 60%);opacity:0;transition:opacity var(--transition)}.stat-card:hover{border-color:var(--gold-dim);transform:translateY(-2px)}.stat-card:hover:after{opacity:1}.stat-label{font-family:var(--font-mono);font-size:.65rem;color:var(--text-3);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}.stat-value{font-family:var(--font-display);font-size:3rem;font-weight:400;line-height:1;letter-spacing:-.02em;color:var(--text)}.stat-value.gold{color:var(--gold)}.stat-value.green{color:var(--success)}.table-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;overflow:hidden}.table-toolbar{display:flex;align-items:center;justify-content:space-between;padding:20px 28px;border-bottom:1px solid var(--border)}.table-title{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}table.knurls{width:100%;border-collapse:collapse}table.knurls th{padding:12px 20px;font-family:var(--font-mono);font-size:.62rem;color:var(--text-3);letter-spacing:.12em;text-transform:uppercase;text-align:left;border-bottom:1px solid var(--border);background:var(--bg-2)}table.knurls td{padding:16px 20px;font-size:.875rem;border-bottom:1px solid rgba(42,42,42,.5);vertical-align:middle}[data-theme=light] table.knurls td{border-bottom:1px solid rgba(216,208,196,.4)}table.knurls tr:last-child td{border-bottom:none}table.knurls tr td{transition:background var(--transition)}table.knurls tr:hover td{background:var(--glow)}.short-code{font-family:var(--font-mono);font-size:.82rem;color:var(--gold);cursor:pointer;transition:opacity var(--transition);background:none;border:none;padding:0}.short-code:hover{opacity:.7;text-decoration:underline}.orig-url{font-family:var(--font-mono);font-size:.78rem;color:var(--text-3);max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.click-pill{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;background:#7ea87e1a;color:var(--success);font-family:var(--font-mono);font-size:.78rem;font-weight:500;border:1px solid rgba(126,168,126,.2)}.expired-chip{display:inline-flex;align-items:center;padding:3px 8px;border-radius:4px;background:#c47c6a14;color:var(--danger);font-family:var(--font-mono);font-size:.7rem;border:1px solid rgba(196,124,106,.2);margin-top:4px}.time-text{font-family:var(--font-mono);font-size:.75rem;color:var(--text-3)}.action-row{display:flex;gap:8px}.pagination{display:flex;align-items:center;justify-content:center;gap:6px;padding:20px;border-top:1px solid var(--border)}.pg-btn{width:34px;height:34px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text-3);font-family:var(--font-mono);font-size:.8rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all var(--transition)}.pg-btn:hover{border-color:var(--gold);color:var(--gold)}.pg-btn.active{background:var(--gold);border-color:var(--gold);color:var(--ink)}.pg-btn:disabled{opacity:.3;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background:#000000a6;-webkit-backdrop-filter:blur(12px) saturate(.8);backdrop-filter:blur(12px) saturate(.8);z-index:500;display:flex;align-items:center;justify-content:center;padding:24px;animation:overlayIn .25s ease}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface);border:1px solid var(--border);border-radius:20px;width:100%;max-width:780px;max-height:88vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:modalIn .35s cubic-bezier(.34,1.3,.64,1)}@keyframes modalIn{0%{transform:scale(.95) translateY(16px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:22px 28px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:10}.modal-title{font-family:var(--font-display);font-size:1.5rem;font-weight:400}.modal-title em{font-style:italic;color:var(--gold)}.modal-close{width:34px;height:34px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text-3);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:all var(--transition)}.modal-close:hover{border-color:var(--text-2);color:var(--text)}.modal-body{padding:28px}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:28px}.analytics-meta-card{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:18px}.analytics-meta-label{font-family:var(--font-mono);font-size:.62rem;color:var(--text-3);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}.analytics-meta-value{font-family:var(--font-display);font-size:2rem;font-weight:400;line-height:1;letter-spacing:-.02em}.analytics-table-wrap{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;overflow:hidden}.analytics-table-label{padding:14px 20px;font-family:var(--font-mono);font-size:.65rem;color:var(--text-3);text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid var(--border)}.device-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-family:var(--font-mono);font-size:.72rem}.device-badge.MOBILE{background:#c9a96e1a;color:var(--gold);border:1px solid rgba(201,169,110,.2)}.device-badge.DESKTOP{background:#7ea87e1a;color:var(--success);border:1px solid rgba(126,168,126,.2)}.device-badge.TABLET{background:#c47c6a1a;color:var(--danger);border:1px solid rgba(196,124,106,.2)}.device-badge.UNKNOWN{background:#6b65601a;color:var(--text-3);border:1px solid var(--border)}.user-pill{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:100px;padding:5px 14px 5px 5px;cursor:pointer;transition:border-color var(--transition);position:relative}.user-pill:hover{border-color:var(--gold-dim)}.user-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--gold-dim),var(--gold));display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.82rem;color:var(--ink);flex-shrink:0}.user-name{font-size:.82rem;font-weight:500;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--surface);border:1px solid var(--border);border-radius:12px;min-width:175px;box-shadow:var(--shadow-md);overflow:hidden;animation:pageIn .2s ease;z-index:300}.dropdown-item{display:flex;align-items:center;gap:10px;padding:11px 16px;font-size:.85rem;font-weight:500;cursor:pointer;border:none;background:none;color:var(--text-2);width:100%;text-align:left;transition:background var(--transition),color var(--transition)}.dropdown-item:hover{background:var(--surface-3);color:var(--text)}.dropdown-item.danger{color:var(--danger)}.dropdown-item.danger:hover{background:#c47c6a14}.dropdown-sep{height:1px;background:var(--border);margin:4px 0}.toast-rack{position:fixed;bottom:28px;right:28px;display:flex;flex-direction:column;gap:10px;z-index:9999}.toast{display:flex;align-items:center;gap:12px;padding:14px 20px;background:var(--surface);border:1px solid var(--border);border-radius:12px;font-size:.85rem;font-weight:500;box-shadow:var(--shadow-md);min-width:250px;max-width:360px;animation:toastIn .35s cubic-bezier(.34,1.56,.64,1)}@keyframes toastIn{0%{transform:translate(20px) scale(.96);opacity:0}to{transform:translate(0) scale(1);opacity:1}}.toast.out{animation:toastOut .3s ease forwards}@keyframes toastOut{to{transform:translate(20px);opacity:0}}.toast.success{border-left:2px solid var(--success)}.toast.error{border-left:2px solid var(--danger)}.toast.info{border-left:2px solid var(--gold)}.empty-state{text-align:center;padding:64px 24px;color:var(--text-3)}.empty-icon{font-size:2.5rem;margin-bottom:16px;display:block;opacity:.4}.empty-state h3{font-family:var(--font-display);font-size:1.4rem;font-weight:400;color:var(--text-2);margin-bottom:8px}.empty-state p{font-size:.875rem;margin-bottom:24px}.spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(201,169,110,.2);border-top-color:var(--gold);border-radius:50%;animation:spin .65s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.error-msg{font-family:var(--font-mono);font-size:.76rem;color:var(--danger);margin-top:10px;animation:slideIn .2s ease}.divider{height:1px;background:var(--border)}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-3)}.shimmer-btn{position:relative;overflow:hidden}.shimmer-btn:before{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);transform:skew(-20deg);transition:left .5s ease}.shimmer-btn:hover:before{left:160%}@media(max-width:680px){nav.app-nav{padding:0 20px}.hero{padding:60px 20px}.shorten-box{padding:22px}.input-row,.options-row{flex-direction:column}.dashboard{padding:32px 16px}.stats-grid{grid-template-columns:1fr}.dash-header{flex-direction:column;align-items:flex-start}table.knurls td,table.knurls th{padding:10px 14px}.orig-url{max-width:120px}.auth-card{padding:28px 22px}.modal-overlay{align-items:flex-end;padding:0}.modal{border-radius:20px 20px 0 0;max-height:90vh}}@media(max-width:480px){.hero-title{font-size:2.6rem}}
