.link-card{position:relative;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:16px;margin-bottom:16px}.shared-link{border-left:4px solid #4a90e2}.shared-badge{position:absolute;top:10px;right:10px;background-color:#4a90e2;color:#fff;font-size:12px;padding:3px 8px;border-radius:4px}.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80%}.context-button{background-color:#f0f7ff;color:#4a90e2;border:1px solid #4a90e2;border-radius:4px;padding:2px 8px;font-size:12px;margin-left:8px;cursor:pointer;transition:all .2s}.context-button:hover{background-color:#4a90e2;color:#fff}.context-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.context-popup{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0003;width:90%;max-width:600px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.context-popup-header{position:relative;padding:16px;border-bottom:1px solid #eee;text-align:center}.context-popup-header h3{margin:0;color:#333}.close-button{background:none;border:none;font-size:24px;cursor:pointer;color:#666;position:absolute;top:10px;right:10px;padding:5px 10px;line-height:1}.context-popup-content{padding:16px;overflow-y:auto;max-height:calc(80vh - 70px)}.context-popup-content pre{margin:0;white-space:pre-wrap;font-family:monospace;font-size:12px;background-color:#f5f5f5;padding:12px;border-radius:4px;color:#333}.profile-button-container{position:relative;display:inline-block}.profile-icon-button{background:none;border:none;cursor:pointer;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#4a90e2;background-color:#4a90e21a;transition:background-color .3s}.profile-icon-button:hover{background-color:#4a90e233}.profile-icon{width:24px;height:24px}.profile-dropdown-menu{position:absolute;top:45px;right:0;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;width:200px;z-index:1000;overflow:hidden}.profile-dropdown-email{padding:12px 16px;font-size:14px;color:#333;border-bottom:1px solid #eee;word-break:break-all;font-weight:500}.profile-dropdown-item{display:block;width:100%;text-align:left;padding:12px 16px;background:none;border:none;cursor:pointer;font-size:14px;color:#333;transition:background-color .3s}.profile-dropdown-item:hover{background-color:#f5f5f5}.logout-button{color:#f44336}.logout-button:hover{background-color:#f443361a}.permissions-content{background-color:#fff;border-radius:8px;padding:20px;width:90%;max-width:600px;max-height:80vh;overflow-y:auto;position:relative;box-shadow:0 4px 8px #0003}.add-permission-form{margin-bottom:20px;padding:15px;background-color:#f5f5f5;border-radius:5px}.permissions-list ul,.invitations-list ul{list-style:none;padding:0}.level{color:#666;font-size:.9em}.expires{color:#888;font-size:.8em}.invitation-actions{display:flex;gap:10px}.copy-button{background-color:#2196f3;color:#fff;border:none;padding:5px 10px;border-radius:4px;cursor:pointer}.invitation-accept{text-align:center;padding:20px;max-width:500px;margin:0 auto}.accept-button{background-color:#4caf50;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:16px;margin-top:20px}.accept-button:disabled{background-color:#ccc;cursor:not-allowed}.success-message{text-align:center;color:#4caf50;padding:20px}.link-actions{display:flex;flex-wrap:wrap;gap:10px}@media (max-width: 600px){.permissions-content{width:95%;padding:15px}.permission-item,.invitation-item{flex-direction:column;align-items:flex-start}.invitation-actions,.permission-actions{margin-top:10px;align-self:flex-end}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Arial,sans-serif;line-height:1.6;background-color:#f4f4f4;color:#333;padding:20px}.container{max-width:1200px;margin:0 auto;padding:20px;background-color:#fff;box-shadow:0 2px 10px #0000001a;border-radius:8px}h1,h2{text-align:center;margin-bottom:20px}p{font-size:1rem;line-height:1.5}input{width:100%;padding:12px;margin-bottom:15px;border:1px solid #ccc;border-radius:4px;font-size:1rem}button{width:100%;padding:6px 20px;max-height:50px;background-color:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;transition:background-color .3s ease}button:hover{background-color:#45a049}.flex-center{display:flex;justify-content:center;align-items:center}.header{display:flex;gap:10px;flex-direction:row;margin-bottom:20px}.header h1{margin:0}.chart-grid{position:relative;width:100%;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.chart-grid table{width:100%;border-collapse:collapse;margin-top:20px}.chart-grid th,.chart-grid td{border:1px solid #ddd;padding:8px;text-align:left}.chart-grid th{background-color:#f4f4f4;font-weight:700}.chart-grid tr:nth-child(2n){background-color:#f9f9f9}.chart-grid tr:hover{background-color:#f1f1f1}@media (max-width: 768px){.header{flex-direction:column}}@media (min-width: 768px){.container{max-width:calc(100vw - 60px);padding:30px}button{width:auto}.chart-grid{width:calc(1vw - 80px)}}@media (min-width: 1024px){.container{max-width:800px}.chart-grid{width:760px}}@media (min-width: 1400px){.container{max-width:1200px}.chart-grid{width:1100px;grid-template-columns:repeat(3,1fr)}}.link-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:20px}.link-card,.report-card{border:1px solid #ddd;border-radius:8px;padding:15px;margin-bottom:20px;box-shadow:0 2px 5px #0000001a;position:relative}.link-card p,.report-card p{margin-bottom:10px}.shared-link{border-left:4px solid #4a90e2;background-color:#f8fbff}.shared-badge{position:absolute;top:10px;right:10px;background-color:#4a90e2;color:#fff;font-size:12px;padding:3px 8px;border-radius:12px;font-weight:500}.link-card,.report-card{padding:15px;background-color:#f9f9f9;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 4px #0000001a}.link-card p,.report-card p{margin-bottom:8px}.text-ellipsis{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.inline-flex{display:flex;align-items:center;gap:10px}.icon-button{width:26px;height:26px;border:none;border-radius:5px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .3s ease}.icon-button img{width:20px;height:20px;opacity:1;transition:opacity .3s ease}.icon-button:hover img{opacity:.7}.icon-button:active img{opacity:.5}.inline-flex{display:flex;flex-direction:row;gap:5px}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;width:100%}.user-dropdown{position:relative;display:inline-block}.dropdown-button{background-color:#4caf50;color:#fff;padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;min-width:150px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px}.dropdown-button:hover{background-color:#45a049}.dropdown-menu{position:absolute;right:0;top:100%;background-color:#fff;min-width:200px;box-shadow:0 8px 16px #0003;z-index:1000;border-radius:4px;overflow:hidden;margin-top:5px}.dropdown-email{padding:12px 16px;color:#333;border-bottom:1px solid #eee;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background-color:#f9f9f9}.dropdown-item{width:100%;text-align:left;padding:12px 16px;border:none;background-color:#fff;cursor:pointer;transition:background-color .2s;border-radius:0}.logout-button{color:#f44336;background-color:#fff}.logout-button:hover{background-color:#f9f9f9;color:#d32f2f}@media (max-width: 768px){.dashboard-header{flex-direction:column;gap:15px}.dropdown-button,.dropdown-menu,.user-dropdown{width:100%}}.create-short-url-container{max-width:600px;margin:0 auto;padding:20px}.card{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;padding:24px}.create-short-url-container h2{margin-top:0;color:#333;font-weight:600;margin-bottom:24px}.form-group{margin-bottom:20px}.create-short-url-container label{display:block;margin-bottom:6px;font-weight:500;color:#555}.form-control{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:16px;transition:border-color .2s}.form-control:focus{border-color:#4a90e2;outline:none;box-shadow:0 0 0 2px #4a90e233}.context-textarea{font-family:monospace;resize:vertical;font-size:11px}.invalid-json{border-color:#e53935;background-color:#e539350d}.helper-text{display:block;margin-top:4px;color:#666;font-size:12px}.error-message{color:#e53935;margin-bottom:16px;font-size:14px;padding:8px 12px;background-color:#e539351a;border-radius:4px}.duplicate-error{border-left:4px solid #e53935;font-weight:500;background-color:#e5393526;padding:12px 16px}.context-error{margin-top:8px;margin-bottom:0}.button-group{display:flex;gap:12px;margin-top:24px}.create-short-url-container button{padding:10px 16px;border-radius:4px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.primary-button{background-color:#4a90e2;color:#fff}.primary-button:hover{background-color:#3a7bc8}.primary-button:disabled{background-color:#a0c4f0;cursor:not-allowed}.secondary-button{background-color:#f5f5f5;color:#333}.secondary-button:hover{background-color:#e5e5e5}.result-container{margin-top:24px;padding:16px;background-color:#f0f7ff;border-radius:6px;border-left:4px solid #4a90e2}.result-container h3{margin-top:0;color:#4a90e2;font-size:18px;margin-bottom:12px}.short-url-display{display:flex;align-items:center;gap:10px;background:#fff;padding:8px 12px;border-radius:4px;border:1px solid #ddd}.short-url-display a{color:#4a90e2;text-decoration:none;font-weight:500;flex-grow:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.short-url-display a:hover{text-decoration:underline}.link-preview-card{display:flex;flex-direction:column;border:1px solid #ddd;border-radius:8px;overflow:hidden;max-width:600px;box-shadow:0 2px 4px #0000001a;margin:16px 0;transition:scale .3s ease}.link-preview-card:hover{transform:scale(1.02)}.preview-image{height:150px;object-fit:cover}.preview-content{padding:16px;display:flex;flex-direction:column;justify-content:center}.preview-title{font-size:18px;font-weight:700;margin:0 0 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-description{font-size:14px;color:#555;margin:0;max-height:40px;overflow:hidden;text-overflow:ellipsis}.permissions-modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.permissions-content{background-color:#fff;padding:20px;border-radius:8px;width:90%;max-width:600px;max-height:80vh;overflow-y:auto;position:relative}.close-button{position:absolute;top:10px;right:10px;background:none;border:none;font-size:24px;cursor:pointer;color:#666}.close-button:hover{color:#333}.add-permission-form{margin-bottom:20px;padding:15px;background-color:#f5f5f5;border-radius:6px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:700}.form-group input,.form-group select{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px}.permissions-list,.invitations-list{margin-top:20px}.permissions-list h3,.invitations-list h3{margin-bottom:10px;padding-bottom:5px;border-bottom:1px solid #eee}.permission-item,.invitation-item{display:flex;justify-content:space-between;align-items:center;padding:10px;border-bottom:1px solid #eee}.permission-info,.invitation-info{display:flex;flex-direction:column}.email{font-weight:700}.level{font-size:.9em;color:#666}.expires{font-size:.8em;color:#999}.remove-button,.cancel-button{background-color:#f44336;color:#fff;border:none;padding:5px 10px;border-radius:4px;cursor:pointer}.copy-button{background-color:#4a90e2;color:#fff;border:none;padding:5px 10px;border-radius:4px;cursor:pointer;margin-right:5px}.invitation-actions{display:flex}button[type=submit]{background-color:#4caf50;color:#fff;padding:10px 15px;border:none;border-radius:4px;cursor:pointer;font-weight:700}button[type=submit]:hover{background-color:#45a049}.error{color:#f44336;margin:10px 0}.latest-invitation{margin-top:20px;padding:15px;background-color:#e8f4ff;border-radius:6px;border-left:4px solid #4a90e2}.latest-invitation h4{margin-top:0;margin-bottom:10px;color:#2c3e50}.invitation-link-container{display:flex;margin-bottom:10px}.invitation-link-input{flex-grow:1;padding:8px 10px;border:1px solid #ddd;border-radius:4px 0 0 4px;background-color:#f8f9fa;font-size:14px;color:#333}.invitation-link-container .copy-button{margin-right:0;border-radius:0 4px 4px 0}.invitation-note{margin:5px 0 0;font-size:13px;color:#666;font-style:italic}.general-info-container{display:flex;justify-content:space-between;position:relative}.info-left,.info-right{width:48%}@media (max-width: 768px){.general-info-container{flex-direction:column}.info-left,.info-right{width:100%}}.og-preview img{max-width:100%;height:auto}.manage-access-button{margin-top:10px;padding:8px 12px;background-color:#4a90e2;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .3s}.manage-access-button:hover{background-color:#357ab8}.manage-access-button:focus{outline:none;box-shadow:0 0 0 2px #4a90e280}.timeframe-visits{background-color:#f5f8ff;border-radius:6px;padding:10px 12px;margin:10px 0;border-left:3px solid #4a90e2}.timeframe-date{margin-left:6px;font-size:.85em;color:#666}.bot-visits{margin-top:5px;font-size:.9em;color:#666;padding-left:5px;border-left:2px solid #e0e0e0}
