@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap);section.app-page{background:var(--background);height:100vh;height:100dvh}section.app-page,section.app-page .body-content{display:grid;grid-template-rows:-webkit-max-content 1fr;grid-template-rows:max-content 1fr}section.app-page .body-content{grid-gap:1.5rem;gap:1.5rem;overflow:auto;padding:1.5rem}section.app-page .body-content .new-link-creator{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:1.25rem 1.5rem}section.app-page .body-content .new-link-creator .creator-label{color:var(--text-secondary);font-size:.8125rem;font-weight:500;margin-bottom:.75rem}section.app-page .body-content .new-link-creator form.normal-form .row.inline input[type=text]{border-radius:var(--radius-full);padding:.625rem 1.25rem}section.app-page .body-content .links-table{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:grid;grid-template-rows:1fr;min-height:0;overflow:hidden}section.app-page .body-content .links-table .sticky-wrapper{margin:0;overflow:auto;padding:0}section.app-page .body-content .links-table .sticky-wrapper table{border-collapse:collapse;table-layout:fixed;width:100%}section.app-page .body-content .links-table .sticky-wrapper table thead tr{background:var(--background);position:-webkit-sticky;position:sticky;top:0;z-index:1}section.app-page .body-content .links-table .sticky-wrapper table th{border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:.75rem;font-weight:600;letter-spacing:.04em;padding:.75rem 1rem;text-align:left;text-transform:uppercase}section.app-page .body-content .links-table .sticky-wrapper table tbody tr{transition:background .15s ease}section.app-page .body-content .links-table .sticky-wrapper table tbody tr:hover{background:var(--primary-light)}section.app-page .body-content .links-table .sticky-wrapper table tbody tr:not(:last-child) td{border-bottom:1px solid var(--border)}section.app-page .body-content .links-table .sticky-wrapper table td{border-radius:0;color:var(--text-primary);font-size:.875rem;overflow:hidden;padding:.625rem 1rem;text-overflow:ellipsis;white-space:nowrap}section.app-page .body-content .links-table .sticky-wrapper table td.expanding{width:auto}section.app-page .body-content .links-table .sticky-wrapper table td,section.app-page .body-content .links-table .sticky-wrapper table th{width:120px}section.app-page .body-content .links-table .sticky-wrapper table td.expanding,section.app-page .body-content .links-table .sticky-wrapper table th.expanding{max-width:calc(100% - 242px);width:calc(100% - 242px)}section.app-page .body-content .links-table .sticky-wrapper table td.clickable{color:var(--primary);font-weight:500}section.app-page .body-content .links-table .sticky-wrapper table td.clickable:hover{text-decoration:underline}section.app-page .body-content .links-table .sticky-wrapper table .empty-state td{color:var(--text-muted);font-size:.875rem;padding:3rem 1rem;text-align:center}section.app-page .body-content .links-table .sticky-wrapper table .visits-count{-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum";color:var(--text-secondary);font-variant-numeric:tabular-nums}@media screen and (max-width:600px){section.app-page .body-content{padding:1rem}section.app-page .body-content .links-table table td,section.app-page .body-content .links-table table th{padding:.5rem .625rem;width:80px}section.app-page .body-content .links-table table td.expanding,section.app-page .body-content .links-table table th.expanding{max-width:calc(100% - 162px);width:calc(100% - 162px)}}.site-header{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;padding:.75rem 1.5rem}.site-header,.site-header>.logo{align-items:center;border-radius:0;display:flex}.site-header>.logo{gap:.625rem}.site-header>.logo>img.logo-image{height:auto;width:28px}.site-header>.logo .brand{color:var(--text-primary);font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.site-header>.logo .slogan{border-left:1px solid var(--border);color:var(--text-muted);font-size:.8125rem;padding-left:.625rem}.site-header>.header-right{align-items:center;display:flex;gap:1rem}.site-header>.header-right .version{color:var(--text-muted);font-size:.75rem}.site-header>.header-right .logout-btn{background:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-family:Inter,sans-serif;font-size:.8125rem;font-weight:500;padding:.375rem .875rem;transition:color .2s ease,background .2s ease}.site-header>.header-right .logout-btn:hover{background:var(--background);color:var(--text-primary)}section.login-page{background:var(--background);display:grid;grid-template-rows:-webkit-max-content 1fr;grid-template-rows:max-content 1fr;height:100vh;height:100dvh}section.login-page .centered-box{align-content:center;display:grid;justify-content:center;padding:1.25rem}section.login-page .centered-box form.log-in{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:calc(100vw - 2.5rem);padding:2.5rem;width:440px}section.login-page .centered-box form.log-in h2{margin-bottom:.25rem}section.login-page .centered-box form.log-in .subtitle{color:var(--text-secondary);font-size:.875rem;margin-bottom:.5rem}section.login-page .centered-box form.log-in .row .checkbox-wrapper{align-items:center;display:flex;gap:.5rem}section.login-page .centered-box form.log-in .row .checkbox-wrapper>label{color:var(--text-secondary);cursor:pointer;font-size:.875rem;-webkit-user-select:none;user-select:none}section.login-page .centered-box form.log-in .row input[type=checkbox]{accent-color:var(--primary);border-radius:4px;cursor:pointer;height:1.125rem;width:1.125rem}section.login-page .centered-box form.log-in .row .input-with-icon{position:relative}section.login-page .centered-box form.log-in .row .input-with-icon img{height:20px;opacity:.35;position:absolute;right:.75rem;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:20px}section.login-page .centered-box form.log-in .row input{padding-right:2.5rem}:root{--primary:#2563eb;--primary-hover:#1d4ed8;--primary-light:#eff6ff;--surface:#fff;--surface-elevated:hsla(0,0%,100%,.72);--background:#f1f5f9;--text-primary:#1e293b;--text-secondary:#64748b;--text-muted:#94a3b8;--border:#e2e8f0;--border-light:hsla(0,0%,100%,.2);--error:#ef4444;--success:#22c55e;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,.05);--shadow-md:0 4px 24px rgba(0,0,0,.08);--shadow-lg:0 8px 40px rgba(0,0,0,.12)}@-webkit-keyframes spinner{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spinner{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}*{border:0;box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f1f5f9;background:var(--background);color:#1e293b;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}a,button,input[type=button],input[type=submit]{cursor:pointer}.small,small{font-size:.875rem}.clickable{cursor:pointer}.error{color:#ef4444;color:var(--error)}h1{font-weight:700}h2{color:#1e293b;color:var(--text-primary);font-size:1.5rem;font-weight:600}button.action{background:#2563eb;background:var(--primary);border-radius:9999px;border-radius:var(--radius-full);box-shadow:0 1px 3px rgba(37,99,235,.3);color:#fff;font-family:Inter,sans-serif;font-size:.9375rem;font-weight:600;padding:.625rem 2rem;transition:background .2s ease,box-shadow .2s ease,-webkit-transform .15s ease;transition:background .2s ease,transform .15s ease,box-shadow .2s ease;transition:background .2s ease,transform .15s ease,box-shadow .2s ease,-webkit-transform .15s ease}button.action:hover{background:#1d4ed8;background:var(--primary-hover);box-shadow:0 4px 12px rgba(37,99,235,.35);-webkit-transform:translateY(-1px);transform:translateY(-1px)}button.action:active{box-shadow:0 1px 3px rgba(37,99,235,.3);-webkit-transform:translateY(0);transform:translateY(0)}form.normal-form{grid-gap:1.25rem;display:grid;gap:1.25rem}form.normal-form.no-gap{gap:0}form.normal-form.submitting button,form.normal-form.submitting input{opacity:.7;pointer-events:none}form.normal-form.submitting button.action:before{-webkit-animation:spinner .6s linear infinite;animation:spinner .6s linear infinite;border:2px solid transparent;border-radius:50%;border-top-color:#fff;box-sizing:border-box;content:"";height:18px;margin-top:-9px;position:absolute;right:12px;top:50%;width:18px}form.normal-form .row{position:relative}form.normal-form .row>label{color:#64748b;color:var(--text-secondary);display:block;font-size:.8125rem;font-weight:500;margin-bottom:.375rem}form.normal-form .row input[type=email],form.normal-form .row input[type=password],form.normal-form .row input[type=text]{background:#fff;background:var(--surface);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#1e293b;color:var(--text-primary);font-family:Inter,sans-serif;font-size:.9375rem;padding:.625rem .875rem;transition:border-color .2s ease,box-shadow .2s ease}form.normal-form .row input[type=email]::-webkit-input-placeholder,form.normal-form .row input[type=password]::-webkit-input-placeholder,form.normal-form .row input[type=text]::-webkit-input-placeholder{color:#94a3b8;color:var(--text-muted)}form.normal-form .row input[type=email]::placeholder,form.normal-form .row input[type=password]::placeholder,form.normal-form .row input[type=text]::placeholder{color:#94a3b8;color:var(--text-muted)}form.normal-form .row input[type=email]:focus,form.normal-form .row input[type=password]:focus,form.normal-form .row input[type=text]:focus{border-color:#2563eb;border-color:var(--primary);box-shadow:0 0 0 3px rgba(37,99,235,.1);outline:none}form.normal-form .row button,form.normal-form .row input[type=email],form.normal-form .row input[type=password],form.normal-form .row input[type=text]{display:block;line-height:1.5;width:100%}form.normal-form .row.inline{display:flex;gap:.75rem}form.normal-form .row.inline input[type=email],form.normal-form .row.inline input[type=password],form.normal-form .row.inline input[type=text]{width:100%}form.normal-form .row.inline button{padding:.625rem 2.5rem;white-space:nowrap;width:-webkit-max-content;width:max-content}@media screen and (max-width:600px){html{font-size:14px}}
/*# sourceMappingURL=main.44f81b98.css.map*/