:root{--primary:#4f46e5;--primary2:#7c3aed;--ink:#111827;--muted:#6b7280;--line:#e5e7eb;--bg:#f7f8fc;--white:#fff;--success:#10b981;--danger:#ef4444;--shadow:0 20px 60px rgba(31,41,55,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--bg)}a{text-decoration:none;color:inherit}.container{width:min(1160px,calc(100% - 36px));margin:auto}.topbar{height:74px;background:rgba(255,255,255,.92);border-bottom:1px solid rgba(229,231,235,.8);position:sticky;top:0;z-index:50;backdrop-filter:blur(16px)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px;font-size:21px;font-weight:800}.brand-mark,.auth-icon{display:grid;place-items:center;color:white;background:linear-gradient(135deg,var(--primary),var(--primary2));border-radius:12px;box-shadow:0 10px 22px rgba(79,70,229,.28)}.brand-mark{width:38px;height:38px}.nav-wrap nav{display:flex;align-items:center;gap:24px}.nav-wrap nav>a:not(.btn){font-size:14px;font-weight:600;color:#4b5563}.btn{border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;border-radius:11px;background:linear-gradient(135deg,var(--primary),var(--primary2));color:white;font-weight:700;cursor:pointer;box-shadow:0 9px 22px rgba(79,70,229,.22);transition:.2s}.btn:hover{transform:translateY(-1px);filter:brightness(1.04)}.btn-sm{padding:9px 14px}.btn-lg{padding:14px 22px}.btn-block{width:100%}.btn-outline{background:white;color:var(--primary);border:1px solid #c7d2fe;box-shadow:none}.btn-ghost{background:#eef2ff;color:var(--primary);box-shadow:none}.hero{overflow:hidden;background:radial-gradient(circle at 80% 15%,#ddd6fe 0,transparent 29%),linear-gradient(180deg,#fff 0,#f5f3ff 100%);padding:92px 0}.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:70px;align-items:center}.eyebrow{display:inline-block;color:var(--primary);font-size:12px;font-weight:800;letter-spacing:.14em;margin-bottom:14px}.hero h1,.page-head h1{font-size:54px;line-height:1.04;letter-spacing:-.045em;margin:0 0 22px}.hero h1 span{color:var(--primary)}.hero p{font-size:18px;line-height:1.75;color:var(--muted);max-width:650px}.hero-actions{display:flex;gap:12px;margin:30px 0 22px}.trust-row{display:flex;gap:20px;color:#4b5563;font-size:13px;font-weight:600}.hero-card,.panel,.auth-card{background:rgba(255,255,255,.96);border:1px solid rgba(229,231,235,.9);border-radius:22px;box-shadow:var(--shadow)}.hero-card{padding:28px;transform:rotate(1deg)}.browser-dot{display:flex;gap:7px;margin-bottom:25px}.browser-dot i{width:9px;height:9px;border-radius:50%;background:#d1d5db}.mock-label{font-size:11px;font-weight:800;color:#9ca3af;margin:16px 0 8px}.mock-input{border:1px solid var(--line);background:#f9fafb;padding:15px;border-radius:10px;color:#6b7280;font-size:13px;overflow:hidden}.mock-row{display:flex;gap:8px}.mock-row .mock-input{flex:1;color:var(--primary);font-weight:700}.mock-row button{width:48px;border:0;border-radius:10px;color:white;background:var(--primary);font-size:20px}.success-box{display:flex;flex-direction:column;gap:4px;margin-top:22px;background:#ecfdf5;color:#047857;padding:17px;border-radius:12px}.success-box span{font-size:12px}.section{padding:90px 0}.section-heading{text-align:center;margin-bottom:40px}.section-heading h2{font-size:38px;margin:0}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.feature-card{background:white;border:1px solid var(--line);border-radius:18px;padding:27px}.feature-card .icon{width:45px;height:45px;display:grid;place-items:center;border-radius:12px;background:#eef2ff;font-size:21px}.feature-card h3{margin:18px 0 8px}.feature-card p{font-size:14px;line-height:1.65;color:var(--muted)}.footer{background:white;border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:13px}.footer-inner{display:flex;justify-content:space-between}.auth-section{min-height:calc(100vh - 148px);display:grid;place-items:center;padding:55px 18px;background:radial-gradient(circle at center,#ede9fe,transparent 45%)}.auth-card{width:min(440px,100%);padding:38px}.auth-card{text-align:center}.auth-card h1{margin:15px 0 7px}.auth-card>p{color:var(--muted);margin-bottom:25px}.auth-icon{width:56px;height:56px;margin:auto;font-size:28px}.form-stack{display:flex;flex-direction:column;gap:16px;text-align:left}.form-stack label{font-size:13px;font-weight:700;color:#374151}.form-stack label small{font-weight:500;color:#9ca3af}.form-stack input,.filter-bar input,.filter-bar select{width:100%;margin-top:7px;border:1px solid #d1d5db;border-radius:10px;padding:13px 14px;background:white;font:inherit;outline:none}.form-stack input:focus,.filter-bar input:focus,.filter-bar select:focus{border-color:#818cf8;box-shadow:0 0 0 4px #eef2ff}.login-hint{margin-top:22px;padding:12px;border-radius:10px;background:#f9fafb;color:var(--muted);font-size:12px}.alert{padding:13px 16px;border-radius:10px;margin-bottom:18px;font-size:14px}.alert-success{background:#ecfdf5;color:#047857}.alert-danger{background:#fef2f2;color:#b91c1c}.flash-wrap{padding-top:20px}.dashboard-section{padding:45px 0 80px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:28px}.page-head h1{font-size:37px;margin-bottom:8px}.page-head p{color:var(--muted);margin:0}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.stat-card{position:relative;background:white;border:1px solid var(--line);border-radius:16px;padding:22px;overflow:hidden}.stat-card span{display:block;color:var(--muted);font-size:13px;font-weight:600}.stat-card strong{display:block;font-size:31px;margin-top:10px}.stat-card i{position:absolute;right:17px;top:17px;font-style:normal;width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#eef2ff;color:var(--primary)}.dashboard-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:20px}.panel{padding:24px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px}.panel-head h2{font-size:20px;margin:0 0 6px}.panel-head p{font-size:13px;color:var(--muted);margin:0}.panel-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#eef2ff;color:var(--primary);font-size:24px}.input-prefix{display:flex;align-items:center;border:1px solid #d1d5db;border-radius:10px;overflow:hidden;margin-top:7px}.input-prefix span{padding:0 0 0 12px;font-size:12px;color:#9ca3af;white-space:nowrap}.input-prefix input{border:0;margin:0;box-shadow:none!important}.link-list{display:flex;flex-direction:column}.link-item{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line)}.link-item:last-child{border:0}.link-main{min-width:0;display:flex;flex-direction:column;gap:5px}.link-main strong{font-size:14px}.link-main a{color:var(--primary);font-size:13px;font-weight:700}.link-main small,.table-link small,td small{color:#9ca3af}.copy-btn,.icon-btn{border:0;cursor:pointer}.copy-btn{width:38px;height:38px;border-radius:9px;background:#eef2ff;color:var(--primary);font-size:17px}.copied{background:#d1fae5!important;color:#047857!important}.empty-state{text-align:center;padding:35px;color:#9ca3af}.filter-bar{display:grid;grid-template-columns:1fr 180px auto auto;gap:10px;margin-bottom:20px}.filter-bar input,.filter-bar select{margin:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{text-align:left;padding:13px 12px;color:#6b7280;font-size:11px;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--line)}td{padding:16px 12px;border-bottom:1px solid #f0f1f4;font-size:13px;vertical-align:middle}.table-link{display:flex;flex-direction:column;gap:5px;max-width:430px}.table-link a{color:var(--primary);font-weight:700}.table-link small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:700}.badge-success{background:#d1fae5;color:#047857}.badge-muted{background:#f3f4f6;color:#6b7280}.action-row{display:flex;gap:6px}.action-row form{margin:0}.icon-btn{width:33px;height:33px;border-radius:8px;background:#f3f4f6;color:#4b5563}.icon-btn:hover{background:#e0e7ff;color:var(--primary)}.icon-btn.danger:hover{background:#fee2e2;color:var(--danger)}.modal{position:fixed;inset:0;background:rgba(17,24,39,.55);z-index:100;display:none;place-items:center;padding:18px}.modal.show{display:grid}.modal-card{position:relative;width:min(500px,100%);background:white;border-radius:18px;padding:28px;box-shadow:var(--shadow)}.modal-card h2{margin-top:0}.modal-close{position:absolute;right:15px;top:12px;border:0;background:transparent;font-size:27px;color:#9ca3af;cursor:pointer}.qr-card{text-align:center}.qr-card img{width:280px;max-width:100%;border:10px solid white;box-shadow:0 8px 30px rgba(0,0,0,.08)}.qr-card p{word-break:break-all;color:var(--primary);font-size:13px}.footer{margin-top:auto}@media(max-width:900px){.hero-grid,.dashboard-grid{grid-template-columns:1fr}.hero{padding:60px 0}.hero h1{font-size:43px}.feature-grid,.stats-grid{grid-template-columns:repeat(2,1fr)}.hero-card{transform:none}.filter-bar{grid-template-columns:1fr 1fr}.page-head{align-items:flex-start;gap:18px}}@media(max-width:620px){.nav-wrap nav>a:not(.btn){display:none}.nav-wrap nav{gap:8px}.hero h1{font-size:36px}.hero-actions,.trust-row{flex-wrap:wrap}.feature-grid,.stats-grid{grid-template-columns:1fr}.section-heading h2{font-size:30px}.page-head{flex-direction:column}.page-head h1{font-size:31px}.filter-bar{grid-template-columns:1fr}.footer-inner{flex-direction:column;gap:8px}.panel{padding:17px}.action-row{min-width:190px}}

/* LinkKita V2 */
.analytics-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin-bottom:20px}.chart-wide{grid-row:span 2}.analytics-grid canvas{width:100%!important;height:310px!important}.chart-wide canvas{height:640px!important}.report-filter label{min-width:150px;font-weight:600;font-size:.82rem}.report-filter input,.report-filter select{margin-top:6px}.report-stats{margin-top:20px}.period-value{font-size:1.08rem!important}.truncate-cell{max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bio-admin-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;margin-bottom:20px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.check-row{display:flex!important;align-items:center;gap:10px}.check-row input{width:auto}.tree-button-list{display:grid;gap:12px}.tree-admin-item{display:grid;grid-template-columns:44px 1fr auto auto;align-items:center;gap:14px;padding:14px;border:1px solid #e5e7eb;border-radius:16px}.tree-admin-item small{display:block;color:#64748b;margin-top:4px}.tree-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#eef2ff;font-size:1.25rem}.bio-public{min-height:100vh;font-family:Inter,sans-serif}.bg-gradient{background:linear-gradient(145deg,#312e81,#7c3aed 48%,#ec4899)}.bg-dark{background:#0f172a}.bg-light{background:#eef2ff}.bio-public-wrap{width:min(620px,calc(100% - 30px));margin:auto;padding:54px 0;text-align:center}.bio-avatar{width:104px;height:104px;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,.7);box-shadow:0 15px 40px rgba(0,0,0,.2)}.bio-avatar-fallback{display:grid;place-items:center;margin:auto;background:#fff;font-size:2.4rem;font-weight:800;color:#4f46e5}.bio-public h1{color:#fff;margin:18px 0 8px}.bg-light h1{color:#111827}.bio-text{color:rgba(255,255,255,.85);line-height:1.65;margin:0 auto 28px;max-width:520px}.bg-light .bio-text{color:#475569}.bio-buttons{display:grid;gap:14px}.bio-button{display:grid;grid-template-columns:34px 1fr 28px;align-items:center;text-align:left;padding:17px 20px;background:rgba(255,255,255,.94);color:#111827;text-decoration:none;box-shadow:0 12px 30px rgba(0,0,0,.13);transition:.2s transform,.2s box-shadow}.bio-button:hover{transform:translateY(-3px);box-shadow:0 18px 35px rgba(0,0,0,.2)}.bio-button.style-rounded{border-radius:16px}.bio-button.style-pill{border-radius:999px}.bio-button.style-square{border-radius:4px}.bio-button i{text-align:right}.bio-footer{margin-top:30px;color:rgba(255,255,255,.72);font-size:.86rem}.bio-footer a{color:inherit;font-weight:700}.bg-light .bio-footer{color:#64748b}
@media(max-width:850px){.analytics-grid,.bio-admin-grid{grid-template-columns:1fr}.chart-wide{grid-row:auto}.chart-wide canvas{height:340px!important}.tree-admin-item{grid-template-columns:42px 1fr}.tree-admin-item>.badge,.tree-admin-item>.action-row{grid-column:2}.two-col{grid-template-columns:1fr}}
.role-chip{display:inline-flex;align-items:center;padding:.35rem .65rem;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.cell-sub{display:block;color:#64748b;margin-top:.25rem}.permission-list p{padding:1rem;border:1px solid #e2e8f0;border-radius:14px;margin:0 0 .75rem}.bio-button-copy{display:flex;flex-direction:column;flex:1;text-align:left}.bio-button-copy small{font-weight:500;opacity:.72;margin-top:.2rem}.bio-button{border-color:var(--bio-accent)!important}.bio-button:hover{box-shadow:0 10px 30px color-mix(in srgb,var(--bio-accent) 24%,transparent)}input[type=color]{height:46px;padding:.25rem}
/* LinkKita V4 */
.brand img{width:40px;height:40px;object-fit:contain}.nav-menu{position:relative}.nav-menu>button{border:0;background:transparent;font-weight:700;color:#4b5563;cursor:pointer;padding:12px}.nav-menu>div{display:none;position:absolute;top:100%;left:0;min-width:210px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px;box-shadow:var(--shadow)}.nav-menu:hover>div,.nav-menu:focus-within>div{display:flex;flex-direction:column}.nav-menu div a{padding:10px 12px;border-radius:8px;font-size:13px}.nav-menu div a:hover{background:#eef2ff;color:var(--primary)}select,textarea{width:100%;margin-top:7px;border:1px solid #d1d5db;border-radius:10px;padding:13px 14px;background:white;font:inherit}.wide-card{width:min(720px,100%)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.auth-links{display:flex;justify-content:space-between;margin-top:18px;font-size:13px;color:var(--primary)}.badge-pending{background:#fef3c7;color:#92400e}.badge-approved{background:#d1fae5;color:#047857}.badge-rejected{background:#fee2e2;color:#b91c1c}.approval-form{display:flex;gap:5px;align-items:center}.approval-form input{max-width:150px;padding:8px;border:1px solid var(--line);border-radius:8px}.approve{background:#d1fae5;color:#047857}.text-link{display:block;color:var(--primary);font-weight:700;margin-top:5px}.company-logo-preview{max-height:90px;max-width:220px;object-fit:contain}.bio-public{min-height:100vh;background-size:cover;background-position:center;background-attachment:fixed}.bio-shell{width:min(620px,calc(100% - 30px));margin:auto;padding:48px 0;text-align:center}.bio-avatar{width:110px;height:110px;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,.8)}.bio-shell>h1{margin-bottom:8px}.public-tree{display:flex;flex-direction:column;gap:12px;margin:30px 0}.tree-btn{display:flex;align-items:center;gap:12px;padding:16px 18px;border-radius:14px;background:var(--bio-theme);color:#fff;box-shadow:0 10px 28px rgba(0,0,0,.15);cursor:pointer;border:2px solid transparent}.tree-btn b{flex:1;text-align:left}.variant-outline{background:transparent;border-color:var(--bio-theme);color:var(--bio-theme)}.variant-glass{background:rgba(255,255,255,.23);backdrop-filter:blur(12px);border-color:rgba(255,255,255,.35)}.variant-gradient{background:linear-gradient(135deg,var(--bio-theme),#7c3aed)}.style-pill .tree-btn{border-radius:999px}.style-square .tree-btn{border-radius:3px}.tree-menu{border:0}.tree-menu summary{list-style:none}.tree-menu summary::-webkit-details-marker{display:none}.submenu{display:flex;flex-direction:column;gap:9px;padding:10px 12px 0}.submenu .tree-btn{transform:scale(.97)}.tree-heading{text-align:left;font-size:15px;margin:16px 4px 0}.anim-pulse{animation:pulse 2s infinite}.anim-bounce{animation:bounce 2.4s infinite}.anim-shine{position:relative;overflow:hidden}.anim-shine:after{content:'';position:absolute;inset:-50%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:translateX(-100%);animation:shine 3s infinite}@keyframes pulse{50%{transform:scale(1.025)}}@keyframes bounce{0%,85%,100%{transform:translateY(0)}90%{transform:translateY(-5px)}}@keyframes shine{100%{transform:translateX(100%)}}.bio-company{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:28px}.bio-company img{height:34px;max-width:110px;object-fit:contain}.bio-credit{margin-top:18px;font-size:12px;opacity:.75}.rank-list>div{display:grid;grid-template-columns:28px 1fr auto;gap:8px;padding:11px 0;border-bottom:1px solid var(--line)}@media(max-width:760px){.two-col{grid-template-columns:1fr}.nav-wrap nav{gap:5px}.nav-menu>button{font-size:12px;padding:8px}.approval-form{min-width:300px}}

/* LinkKita V5 */
.announcement-zone{padding:22px 0 0}.front-announcement{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;border-radius:18px;margin-bottom:14px;border:1px solid var(--line);box-shadow:0 8px 25px rgba(15,23,42,.06)}.front-announcement h2{margin:4px 0 8px;font-size:22px}.front-announcement p{margin:0;line-height:1.6}.announcement-label{font-size:10px;font-weight:900;letter-spacing:.12em}.announcement-info{background:#eff6ff;border-color:#bfdbfe}.announcement-success{background:#ecfdf5;border-color:#a7f3d0}.announcement-warning{background:#fffbeb;border-color:#fde68a}.announcement-danger{background:#fef2f2;border-color:#fecaca}.payment-card{background:linear-gradient(135deg,#111827,#312e81);color:white;padding:22px;border-radius:18px;margin:18px 0;text-align:left;box-shadow:0 14px 35px rgba(49,46,129,.22)}.payment-card>span{font-size:10px;font-weight:900;letter-spacing:.13em;opacity:.7}.payment-card h3{margin:8px 0 3px}.payment-card .account-number{font-size:24px;font-weight:900;letter-spacing:.04em;margin:8px 0}.payment-card p{margin:14px 0 0;color:rgba(255,255,255,.78);font-size:13px}hr{border:0;border-top:1px solid var(--line);margin:24px 0}@media(max-width:700px){.front-announcement{align-items:flex-start;flex-direction:column}.front-announcement .btn{width:100%;text-align:center}}

/* LinkKita V6 - Tampilan menu bergaya Sistem PEKERTI */
.app-body{min-height:100vh;background:#07111f;color:#e5e7eb}.pekerti-topbar{height:68px;background:#07101e;border-bottom:1px solid rgba(148,163,184,.16);position:fixed;left:0;right:0;top:0;z-index:90;backdrop-filter:none}.pekerti-topbar-inner{height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 28px}.pekerti-topbar .brand{color:#f8fafc;font-size:18px}.pekerti-topbar .brand img{width:34px;height:34px}.pekerti-topbar .top-links{display:flex;align-items:center;gap:26px}.pekerti-topbar .top-links a{color:#cbd5e1;font-size:14px;font-weight:650}.pekerti-topbar .top-links a:hover{color:#fff}.pekerti-topbar .logout-link:before{content:'↪ ';}.mobile-menu-toggle{display:none;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;border-radius:10px;width:42px;height:42px;font-size:21px}.app-shell{display:grid;grid-template-columns:310px minmax(0,1fr);min-height:100vh;padding-top:68px}.pekerti-sidebar{position:fixed;top:68px;left:0;bottom:0;width:310px;padding:26px 22px;overflow-y:auto;background:linear-gradient(180deg,#0a1424,#0b1526 70%,#10192b);border-right:1px solid rgba(148,163,184,.15);z-index:80}.sidebar-user-card{display:flex;align-items:center;gap:13px;padding:18px;border-radius:22px;background:rgba(255,255,255,.045);border:1px solid rgba(148,163,184,.19);margin-bottom:18px}.sidebar-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#16a7f0,#4258f5);font-size:20px;font-weight:900;color:#fff}.sidebar-user-card strong{display:block;color:#fff;font-size:14px}.sidebar-user-card small{display:block;color:#9ca3af;margin-top:4px;text-transform:capitalize}.sidebar-nav{display:flex;flex-direction:column;gap:10px}.sidebar-item,.sidebar-group-title{width:100%;display:flex;align-items:center;gap:12px;border:1px solid rgba(148,163,184,.12);background:linear-gradient(90deg,rgba(255,255,255,.055),rgba(105,83,180,.18));color:#cbd5e1;border-radius:17px;padding:14px 16px;text-align:left;box-shadow:inset 0 1px 0 rgba(255,255,255,.035);cursor:pointer}.sidebar-item span,.sidebar-group-title span{width:22px;text-align:center;font-size:17px}.sidebar-item b,.sidebar-group-title b{font-size:14px;font-weight:650;flex:1}.sidebar-group-title i{font-style:normal;transition:.2s}.sidebar-group.open .sidebar-group-title i{transform:rotate(180deg)}.sidebar-item:hover,.sidebar-group-title:hover,.sidebar-item.active{color:#fff;background:linear-gradient(90deg,rgba(36,153,255,.22),rgba(112,74,255,.34));border-color:rgba(96,165,250,.28)}.sidebar-submenu{display:none;padding:7px 5px 0 45px}.sidebar-group.open .sidebar-submenu{display:flex;flex-direction:column;gap:5px}.sidebar-submenu a{position:relative;padding:10px 12px;border-radius:11px;color:#aeb8ca;font-size:13px}.sidebar-submenu a:before{content:'';position:absolute;left:-14px;top:50%;width:6px;height:6px;border-radius:50%;background:#596579}.sidebar-submenu a:hover,.sidebar-submenu a.active{color:#fff;background:rgba(74,111,255,.20)}.sidebar-submenu a.active:before{background:#32b8ff;box-shadow:0 0 10px #32b8ff}.sidebar-tip{margin-top:24px;padding:17px;border-radius:20px;border:1px solid rgba(148,163,184,.16);background:rgba(255,255,255,.035)}.sidebar-tip small{display:block;color:#9ca3af;letter-spacing:.12em;margin-bottom:7px}.sidebar-tip strong{display:block;color:#e2e8f0;font-size:13px;line-height:1.55}.app-content{grid-column:2;min-width:0;display:flex;flex-direction:column;min-height:calc(100vh - 68px);background:radial-gradient(circle at 88% 5%,rgba(14,165,233,.12),transparent 30%),#07111f}.app-main{flex:1;padding:25px 0 54px}.app-main .container{width:min(1240px,calc(100% - 42px))}.app-main .dashboard-section{padding:0}.app-main .page-head{position:relative;align-items:center;padding:28px 30px;margin-bottom:22px;border-radius:22px;overflow:hidden;background:linear-gradient(120deg,#24aee9 0%,#3568f3 53%,#8434e9 100%);box-shadow:0 18px 45px rgba(16,80,220,.28)}.app-main .page-head:after{content:'';position:absolute;right:-40px;top:-90px;width:290px;height:290px;border-radius:50%;border:1px solid rgba(255,255,255,.13);box-shadow:0 0 0 45px rgba(255,255,255,.035),0 0 0 90px rgba(255,255,255,.025)}.app-main .page-head>div,.app-main .page-head>a{position:relative;z-index:2}.app-main .page-head .eyebrow{color:#dff5ff}.app-main .page-head h1{color:#fff;font-size:34px;letter-spacing:-.025em}.app-main .page-head p{color:rgba(255,255,255,.82)}.app-main .page-head .btn-outline{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.42);color:#fff;backdrop-filter:blur(8px)}.app-main .stats-grid{gap:16px}.app-main .stat-card{border:0;color:#fff;padding:20px;border-radius:17px;box-shadow:0 12px 30px rgba(0,0,0,.18)}.app-main .stat-card:nth-child(4n+1){background:linear-gradient(135deg,#0da5dc,#2384ed)}.app-main .stat-card:nth-child(4n+2){background:linear-gradient(135deg,#f39a0c,#dc6806)}.app-main .stat-card:nth-child(4n+3){background:linear-gradient(135deg,#20c66a,#16a34a)}.app-main .stat-card:nth-child(4n+4){background:linear-gradient(135deg,#9148ef,#6d28d9)}.app-main .stat-card span{color:rgba(255,255,255,.82)}.app-main .stat-card i{background:rgba(255,255,255,.12);color:rgba(255,255,255,.7);font-size:24px}.app-main .panel,.app-main .hero-card,.app-main .auth-card{background:#111b2c;border-color:rgba(148,163,184,.16);color:#e5e7eb;box-shadow:0 18px 45px rgba(0,0,0,.22)}.app-main .panel-head p,.app-main .page-head+*,.app-main .empty-state{color:#94a3b8}.app-main .panel-head h2,.app-main td,.app-main .table-link strong,.app-main label{color:#e5e7eb}.app-main input,.app-main select,.app-main textarea,.app-main .filter-bar input,.app-main .filter-bar select{background:#0c1626;border-color:#29364a;color:#e5e7eb}.app-main input::placeholder,.app-main textarea::placeholder{color:#64748b}.app-main .input-prefix{background:#0c1626;border-color:#29364a}.app-main table{background:#101a2b;border-radius:16px;overflow:hidden}.app-main th{color:#9aa8bc;border-bottom-color:#273449}.app-main td{border-bottom-color:#202c3d}.app-main .link-item{border-bottom-color:#263246}.app-main .btn-outline{background:#111b2c}.app-main .btn-ghost,.app-main .copy-btn,.app-main .icon-btn{background:#1a2940;color:#9fc0ff}.app-main .footer,.app-footer{background:#0a1424;border-top-color:rgba(148,163,184,.13)}.app-footer{margin-top:auto}.sidebar-overlay{display:none}.flash-wrap{padding-top:0}.app-main .alert{box-shadow:0 10px 25px rgba(0,0,0,.13)}
@media(max-width:1050px){.app-shell{grid-template-columns:270px minmax(0,1fr)}.pekerti-sidebar{width:270px;padding:20px 16px}.app-main .container{width:min(100% - 28px,1240px)}}
@media(max-width:820px){.mobile-menu-toggle{display:block}.pekerti-topbar-inner{padding:0 15px;gap:12px}.pekerti-topbar .brand{margin-right:auto}.pekerti-topbar .top-links a:not(.logout-link){display:none}.app-shell{display:block}.pekerti-sidebar{transform:translateX(-105%);transition:.25s;width:min(310px,88vw);box-shadow:20px 0 50px rgba(0,0,0,.45)}.sidebar-mobile-open .pekerti-sidebar{transform:translateX(0)}.sidebar-overlay{display:block;position:fixed;inset:68px 0 0;background:rgba(0,0,0,.58);z-index:70;opacity:0;pointer-events:none;transition:.25s}.sidebar-mobile-open .sidebar-overlay{opacity:1;pointer-events:auto}.app-content{min-height:calc(100vh - 68px)}.app-main .page-head{padding:23px}.app-main .page-head h1{font-size:29px}}
@media(max-width:620px){.pekerti-topbar .brand span:last-child{max-width:175px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-main .container{width:calc(100% - 20px)}.app-main .page-head{border-radius:18px}.app-main .stats-grid{grid-template-columns:1fr 1fr}.app-main .stat-card strong{font-size:27px}}
@media(max-width:430px){.app-main .stats-grid{grid-template-columns:1fr}.pekerti-topbar .brand span:last-child{max-width:120px}.top-links{gap:10px!important}}

/* LinkKita V7 QR Center */
.qr-thumb{width:74px;height:74px;border-radius:10px;background:#fff;padding:5px}.qr-card img{width:min(320px,100%);background:#fff;padding:12px;border-radius:16px}.qr-card{text-align:center}.qr-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.chart-box{min-height:330px}.app-main input[type=color]{height:48px;padding:5px}.qr-inline-card{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:14px}.qr-inline-card img{width:92px;height:92px;background:#fff;padding:5px;border-radius:10px}.qr-inline-card .qr-copy{min-width:0;flex:1}.qr-inline-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:620px){.qr-inline-card{align-items:flex-start;flex-direction:column}.filter-bar{grid-template-columns:1fr}}


/* LinkKita V8 - Editable footer */
.site-footer{margin-top:auto}.site-footer-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr) minmax(160px,.8fr);gap:32px;padding-top:38px;padding-bottom:30px}.site-footer-brand{display:flex;gap:18px;align-items:flex-start}.site-footer-brand img{width:64px;height:64px;object-fit:contain;border-radius:14px;background:#fff;padding:6px}.site-footer h3,.site-footer h4{margin:0 0 12px}.site-footer p{margin:6px 0;line-height:1.6}.site-footer a{text-decoration:none;color:inherit;opacity:.92}.site-footer a:hover{opacity:1;text-decoration:underline}.site-footer-links{display:flex;flex-direction:column;gap:9px}.site-footer-bottom{border-top:1px solid rgba(255,255,255,.14);padding:15px 0;font-size:.9rem}.footer-theme-dark{background:#111827;color:#e5e7eb}.footer-theme-brand{background:linear-gradient(135deg,#312e81,#4f46e5);color:#fff}.footer-theme-light{background:#f8fafc;color:#334155;border-top:1px solid #e2e8f0}.footer-theme-light .site-footer-bottom{border-color:#e2e8f0}.app-footer{margin-left:0}.bio-info-footer{margin-top:26px;padding:18px;border-radius:18px;background:rgba(255,255,255,.12);backdrop-filter:blur(10px);text-align:left}.bio-info-footer h3{margin:0 0 10px;text-align:center}.bio-info-footer p{margin:7px 0;line-height:1.6}.bio-info-footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px}.bio-info-footer nav a{padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.14);color:inherit;text-decoration:none;font-size:.88rem}@media(max-width:800px){.site-footer-grid{grid-template-columns:1fr}.site-footer-brand{flex-direction:column}.site-footer-brand img{width:56px;height:56px}}

/* V8.1 upload foto profil */
.upload-preview{display:flex;align-items:center;gap:12px;margin:8px 0 12px;padding:10px;border:1px solid rgba(148,163,184,.22);border-radius:14px;background:rgba(15,23,42,.35)}
.upload-preview img{width:72px;height:72px;object-fit:cover;border-radius:50%;border:3px solid rgba(255,255,255,.15)}
.upload-preview small{display:block;opacity:.75}

/* V8.2 - conditional image background and safer avatar display */
.background-image-fields[hidden]{display:none!important}
.background-image-fields{display:grid;gap:12px;padding:14px;border:1px dashed rgba(148,163,184,.32);border-radius:14px;background:rgba(15,23,42,.18)}
.background-preview img{width:110px!important;height:72px!important;border-radius:10px!important;object-fit:cover!important}
.bio-avatar{width:88px!important;height:88px!important;object-fit:contain!important;object-position:center!important;background:rgba(255,255,255,.96);padding:7px;box-sizing:border-box}
.upload-preview:not(.background-preview) img{width:62px!important;height:62px!important;object-fit:contain!important;background:rgba(255,255,255,.96);padding:5px;box-sizing:border-box}
.bg-image{background:#0f172a;background-size:cover;background-position:center;background-attachment:fixed}
@media(max-width:640px){.bio-avatar{width:78px!important;height:78px!important;padding:6px}}

/* V8.3 Activity Log */
.activity-detail{min-width:320px;max-width:620px;padding:12px 0;line-height:1.65;word-break:break-word}.activity-detail pre{max-height:260px;overflow:auto;white-space:pre-wrap;background:rgba(15,23,42,.65);border:1px solid rgba(148,163,184,.18);border-radius:10px;padding:12px;font-size:12px}.table-panel details summary{cursor:pointer;font-weight:700;color:#8b7bff}.muted{display:block;opacity:.7;margin-top:4px}.badge-danger{background:rgba(239,68,68,.16)!important;color:#fca5a5!important}.badge-warning{background:rgba(245,158,11,.16)!important;color:#fcd34d!important}.badge-success{background:rgba(34,197,94,.16)!important;color:#86efac!important}

/* V8.4 QR web display */
.qr-web-layout{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:20px;margin-bottom:20px}.qr-web-preview{text-align:center}.qr-web-image{display:flex;justify-content:center;margin-bottom:16px}.qr-web-image img{width:min(360px,100%);aspect-ratio:1;background:#fff;padding:16px;border-radius:22px;box-shadow:0 18px 45px rgba(0,0,0,.2)}.qr-web-preview h2{font-size:27px;margin:14px 0 8px}.qr-web-preview>p{color:#94a3b8;line-height:1.65}.qr-url-box{margin:18px 0;padding:14px;border:1px solid rgba(148,163,184,.2);border-radius:13px;background:rgba(15,23,42,.35);text-align:left}.qr-url-box small{display:block;color:#94a3b8;margin-bottom:6px}.qr-url-box strong{display:block;word-break:break-all;color:#a5b4fc}.qr-detail-list{display:grid;gap:0;margin:0}.qr-detail-list>div{display:grid;grid-template-columns:155px minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid rgba(148,163,184,.15)}.qr-detail-list dt{color:#94a3b8;font-weight:700}.qr-detail-list dd{margin:0;word-break:break-word}.qr-detail-list a{color:#93c5fd}.qr-public-body{min-height:100vh;background:radial-gradient(circle at 80% 10%,rgba(124,58,237,.35),transparent 34%),radial-gradient(circle at 15% 80%,rgba(14,165,233,.23),transparent 38%),#07111f;color:#e5e7eb}.qr-public-page{min-height:100vh;display:grid;place-items:center;padding:36px 18px}.qr-public-card{width:min(610px,100%);text-align:center;padding:30px;border:1px solid rgba(148,163,184,.2);border-radius:28px;background:rgba(17,27,44,.92);box-shadow:0 30px 80px rgba(0,0,0,.38);backdrop-filter:blur(20px)}.qr-public-brand{display:inline-flex;align-items:center;gap:10px;margin-bottom:22px}.qr-public-brand img,.qr-public-brand span{width:38px;height:38px;object-fit:contain;display:grid;place-items:center;background:#fff;border-radius:11px;padding:5px;color:#4f46e5}.qr-public-image img{width:min(360px,100%);aspect-ratio:1;background:#fff;padding:16px;border-radius:22px}.qr-public-type{display:inline-block;margin-top:18px;padding:7px 11px;border-radius:999px;background:rgba(99,102,241,.2);color:#c7d2fe;font-size:12px;font-weight:800}.qr-public-card h1{font-size:31px;margin:14px 0 8px}.qr-public-card>p{color:#aeb8ca;line-height:1.7}.qr-public-detail{display:grid;gap:7px;margin:20px 0;padding:16px;border-radius:16px;background:rgba(7,17,31,.7);text-align:left}.qr-public-detail small{color:#7f8da3;margin-top:5px}.qr-public-detail strong{word-break:break-all;color:#e2e8f0;font-size:13px}.qr-public-card footer{margin-top:24px;color:#738198;font-size:12px}@media(max-width:800px){.qr-web-layout{grid-template-columns:1fr}.qr-detail-list>div{grid-template-columns:1fr;gap:5px}.qr-public-card{padding:22px}.qr-public-card h1{font-size:26px}}
/* LinkKita V9 Membership */
.membership-actions{min-width:520px;display:grid;gap:8px}.membership-actions select,.membership-actions input{min-width:120px}.membership-filter{margin:18px 0}.subscription-dashboard-card{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.subscription-days{font-size:42px;font-weight:800;text-align:center}.subscription-days small{display:block;font-size:12px;font-weight:600}.expired-panel{max-width:720px;margin:50px auto;text-align:center}.subscription-summary{margin:24px auto;max-width:420px;text-align:left;background:rgba(255,255,255,.04);padding:18px;border-radius:12px}.btn-danger{background:#b91c1c!important;color:#fff!important}@media(max-width:760px){.membership-actions{min-width:320px}.subscription-dashboard-card{align-items:flex-start;gap:16px}.subscription-days{font-size:32px}}

/* LinkKita V9.1 - Visual Bio Link Menu Builder */
.visual-menu-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.visual-menu-head h2{margin-bottom:6px}.visual-menu-head p{margin:0;color:var(--muted,#9ca9bd);max-width:760px;line-height:1.55}.menu-save-status{white-space:nowrap;padding:7px 12px;border-radius:999px;background:#172238;color:#b9c5d8;font-size:12px;font-weight:700;border:1px solid rgba(255,255,255,.08)}.menu-save-status.saving{color:#fde68a}.menu-save-status.saved{color:#86efac}.menu-save-status.error{color:#fca5a5}.visual-menu-builder{display:grid;gap:10px}.sortable-zone{min-height:22px;border-radius:15px;transition:border-color .18s ease,background .18s ease}.root-zone{display:grid;gap:12px}.child-zone{display:grid;gap:9px;margin:8px 0 2px 30px;padding:10px;border:1px dashed rgba(123,97,255,.35);background:rgba(89,71,180,.07)}.child-zone:empty{min-height:52px}.drop-hint{font-size:12px;color:#8290a7;padding:5px 8px;pointer-events:none}.child-zone .drop-hint:last-child{display:block}.child-zone:has(.menu-node) .drop-hint{display:none}.sortable-zone.drag-over{background:rgba(98,75,255,.14);border-color:#8066ff;outline:2px solid rgba(128,102,255,.2)}.menu-node{display:grid;gap:4px;cursor:grab}.menu-node:active{cursor:grabbing}.menu-node.dragging{opacity:.45;transform:scale(.99)}.menu-node .tree-admin-item{margin-left:0!important}.child-node .tree-admin-item{background:rgba(17,31,52,.75)}.drag-handle{border:0;background:transparent;color:#8ea0bb;font-size:22px;line-height:1;cursor:grab;padding:9px 7px;border-radius:8px;letter-spacing:-5px}.drag-handle:hover{color:#fff;background:rgba(255,255,255,.07)}.drag-handle:active{cursor:grabbing}.menu-builder-note{margin-top:14px;color:#8290a7;font-size:12px;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.025)}
@media(max-width:760px){.visual-menu-head{flex-direction:column}.child-zone{margin-left:14px}.tree-admin-item{grid-template-columns:auto auto 1fr!important}.tree-admin-item>.badge{grid-column:3}.tree-admin-item>.action-row{grid-column:1/-1;justify-content:flex-end}.drag-handle{touch-action:none}}

/* LinkKita V9.2 - Foto Profil User */
.sidebar-avatar{overflow:hidden;flex:0 0 42px}.sidebar-avatar img{width:100%;height:100%;display:block;object-fit:cover}.account-avatar-editor{display:grid;grid-template-columns:112px 1fr;gap:20px;align-items:center;padding:18px;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:rgba(255,255,255,.025)}.account-avatar-preview{width:112px;height:112px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#16a7f0,#6d28d9);border:4px solid rgba(255,255,255,.15);box-shadow:0 12px 30px rgba(0,0,0,.24)}.account-avatar-preview img{width:100%;height:100%;display:block;object-fit:cover}.account-avatar-preview span{font-size:44px;font-weight:900;color:#fff}.account-avatar-controls{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.account-avatar-controls strong{font-size:16px}.account-avatar-controls small{color:#94a3b8;line-height:1.5}.avatar-upload-button{display:inline-flex!important;width:auto!important;align-items:center;justify-content:center;padding:10px 15px;border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--primary2));color:#fff!important;font-weight:700!important;cursor:pointer}.avatar-upload-button input{display:none}.avatar-remove-check{display:flex!important;align-items:center;gap:8px;color:#fca5a5!important;font-weight:600!important}.avatar-remove-check input{width:auto!important;margin:0!important}@media(max-width:650px){.account-avatar-editor{grid-template-columns:1fr;text-align:center}.account-avatar-preview{margin:auto}.account-avatar-controls{align-items:center}}

/* LinkKita V9.3 - File Upload */
.upload-file-info{margin:.45rem 0;font-weight:700;color:var(--text,#1f2937);font-size:.9rem;word-break:break-word}
.tree-file-meta{display:block;font-weight:500;opacity:.78;font-size:.72rem;margin-top:.18rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tree-btn b{min-width:0}
