@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=JetBrains+Mono:wght@400;500&display=swap");:root{--blue-900:#0c1929;--blue-800:#132d4a;--blue-700:#1a3f65;--blue-600:#1e5189;--blue-500:#2563ab;--blue-400:#3b82d6;--blue-300:#6aa5e8;--blue-200:#a3c8f0;--blue-100:#dbeafe;--blue-50:#eff6ff;--slate-900:#0f172a;--slate-800:#1e293b;--slate-700:#334155;--slate-600:#475569;--slate-500:#64748b;--slate-400:#94a3b8;--slate-300:#cbd5e1;--slate-200:#e2e8f0;--slate-100:#f1f5f9;--slate-50:#f8fafc;--green-600:#16a34a;--green-100:#dcfce7;--red-600:#dc2626;--red-100:#fee2e2;--amber-600:#d97706;--amber-100:#fef3c7;--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.07),0 2px 4px -2px rgba(0,0,0,0.05);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.08),0 4px 6px -4px rgba(0,0,0,0.04);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.08),0 8px 10px -6px rgba(0,0,0,0.04);--radius:10px;--radius-sm:6px;--radius-lg:14px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--slate-50);color:var(--slate-800);line-height:1.6;-webkit-font-smoothing:antialiased}.app-layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:var(--blue-900);color:white;display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;width:260px;z-index:100}.sidebar-header{padding:24px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-header h1{font-size:15px;font-weight:600;letter-spacing:.02em;opacity:.95}.sidebar-header .subtitle{font-size:12px;opacity:.45;margin-top:2px}.sidebar-nav{padding:12px 10px;flex:1 1;display:flex;flex-direction:column;gap:2px}.nav-section-title{font-size:10px;text-transform:uppercase;letter-spacing:.1em;opacity:.35;padding:16px 10px 6px;font-weight:600}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;font-size:13.5px;font-weight:400;color:rgba(255,255,255,.65);border:none;background:none;width:100%;text-align:left}.nav-item:hover{background:rgba(255,255,255,.07);color:rgba(255,255,255,.9)}.nav-item.active{background:rgba(255,255,255,.12);color:white;font-weight:500}.nav-item .icon{width:18px;height:18px;opacity:.7;flex-shrink:0}.nav-item.active .icon{opacity:1}.sidebar-footer{padding:16px 20px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:10px}.sidebar-footer .user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.sidebar-footer .user-info{flex:1 1;min-width:0}.sidebar-footer .user-name{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-footer .user-role{font-size:11px;opacity:.4}.main-content{margin-left:260px;padding:32px 40px;min-height:100vh}.page-header{margin-bottom:32px}.page-header h2{font-size:22px;font-weight:700;color:var(--slate-900);letter-spacing:-.01em}.page-header .description{font-size:14px;color:var(--slate-500);margin-top:4px}.card{background:white;border:1px solid var(--slate-200);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-header{padding:18px 22px;border-bottom:1px solid var(--slate-100);display:flex;align-items:center;justify-content:space-between}.card-header h3{font-size:15px;font-weight:600;color:var(--slate-800)}.card-body{padding:22px}.labels-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:16px;gap:16px}.label-card{background:white;border:1px solid var(--slate-200);border-radius:var(--radius);padding:20px;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm);position:relative}.label-card:hover{border-color:var(--blue-300);box-shadow:var(--shadow-md);transform:translateY(-1px)}.label-card.shared{border-left:3px solid var(--blue-500)}.label-card .label-name{font-size:15px;font-weight:600;color:var(--slate-800);margin-bottom:8px}.label-card .label-meta{display:flex;gap:16px;font-size:13px;color:var(--slate-500)}.label-card .label-meta .meta-item{display:flex;align-items:center;gap:4px}.label-card .shared-badge{position:absolute;top:12px;right:12px;background:var(--blue-100);color:var(--blue-600);font-size:11px;font-weight:600;padding:3px 8px;border-radius:20px}.member-list{list-style:none}.member-item{display:flex;align-items:center;padding:12px 0;border-bottom:1px solid var(--slate-100);gap:12px}.member-item:last-child{border-bottom:none}.member-avatar{width:36px;height:36px;border-radius:50%;background:var(--blue-100);color:var(--blue-600);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;flex-shrink:0}.member-info{flex:1 1;min-width:0}.member-name{font-size:14px;font-weight:500;color:var(--slate-800)}.member-email{font-size:12px;color:var(--slate-400)}.member-actions{display:flex;align-items:center;gap:8px}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:500}.badge-synced{background:var(--green-100);color:var(--green-600)}.badge-pending{background:var(--amber-100);color:var(--amber-600)}.badge-error{background:var(--red-100);color:var(--red-600)}.badge-editor{background:var(--blue-100);color:var(--blue-600)}.badge-viewer{background:var(--slate-100);color:var(--slate-500)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;border:none;cursor:pointer;transition:all .15s ease;font-family:inherit;white-space:nowrap}.btn-primary{background:var(--blue-600);color:white}.btn-primary:hover{background:var(--blue-700)}.btn-secondary{background:white;color:var(--slate-600);border:1px solid var(--slate-300)}.btn-secondary:hover{background:var(--slate-50);border-color:var(--slate-400)}.btn-danger{background:white;color:var(--red-600);border:1px solid var(--red-100)}.btn-danger:hover{background:var(--red-100)}.btn-sm{padding:5px 10px;font-size:12px}.btn-icon{padding:6px;width:32px;height:32px}.btn:disabled{opacity:.5;cursor:not-allowed}.select{padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--slate-300);font-size:13px;font-family:inherit;color:var(--slate-700);background:white;cursor:pointer}.select:focus{outline:none;border-color:var(--blue-400);box-shadow:0 0 0 3px rgba(37,99,171,.1)}.table-container{overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--slate-400);padding:10px 16px;border-bottom:1px solid var(--slate-200)}td{padding:12px 16px;font-size:13.5px;border-bottom:1px solid var(--slate-100);color:var(--slate-700)}tr:hover td{background:var(--slate-50)}.sync-log-item{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid var(--slate-100);font-size:13px}.sync-log-item .timestamp{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--slate-400);min-width:140px;flex-shrink:0}.sync-log-item .action{font-weight:500;color:var(--slate-700)}.sync-log-item .details{color:var(--slate-500);font-size:12px}.modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s ease}.modal{background:white;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:90%;max-width:560px;max-height:80vh;overflow-y:auto;animation:slideUp .2s ease}.modal-header{padding:20px 24px;border-bottom:1px solid var(--slate-100);display:flex;align-items:center;justify-content:space-between}.modal-header h3{font-size:16px;font-weight:600}.modal-body{padding:24px}.modal-footer{padding:16px 24px;border-top:1px solid var(--slate-100);display:flex;justify-content:flex-end;gap:8px}.user-picker{border:1px solid var(--slate-200);border-radius:var(--radius-sm);max-height:300px;overflow-y:auto}.user-picker-item{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;transition:background .1s;border-bottom:1px solid var(--slate-100)}.user-picker-item:last-child{border-bottom:none}.user-picker-item:hover{background:var(--blue-50)}.empty-state{text-align:center;padding:48px 24px;color:var(--slate-400)}.empty-state .icon{font-size:40px;margin-bottom:12px;opacity:.5}.empty-state h3{font-size:16px;font-weight:600;color:var(--slate-600);margin-bottom:6px}.empty-state p{font-size:14px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--blue-900),var(--blue-700))}.login-card{background:white;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:48px 40px;text-align:center;max-width:400px;width:90%}.login-card h1{font-size:22px;font-weight:700;color:var(--slate-900);margin-bottom:6px}.login-card .login-subtitle{font-size:14px;color:var(--slate-500);margin-bottom:32px}.google-btn{display:inline-flex;align-items:center;gap:10px;padding:12px 24px;background:white;border:1px solid var(--slate-300);border-radius:var(--radius);font-size:14px;font-weight:500;color:var(--slate-700);cursor:pointer;transition:all .15s ease;font-family:inherit}.google-btn:hover{background:var(--slate-50);border-color:var(--slate-400);box-shadow:var(--shadow-md)}.google-btn img{width:20px;height:20px}.spinner{display:inline-block;width:18px;height:18px;border:2px solid var(--slate-200);border-top-color:var(--blue-500);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.app-layout{grid-template-columns:1fr}.sidebar{display:none}.main-content{margin-left:0;padding:20px}.labels-grid{grid-template-columns:1fr}}