/* --- FILE: public/css/style.css --- */
:root{--bg:#0a0a0a;--bg2:#111;--cd:#1a1a1a;--cd2:#222;--ac:#00FFA3;--acd:rgba(0,255,163,.12);--acg:rgba(0,255,163,.25);--grad:linear-gradient(135deg,#00FFA3,#0066FF);--tx:#e8e8e8;--tx1:#fff;--tx2:#888;--tx3:#555;--rd:#FF4D4D;--rdd:rgba(255,77,77,.12);--bd:rgba(255,255,255,.06);--ba:rgba(0,255,163,.12);--r:16px;--rs:12px;--rx:8px;--tr:.18s cubic-bezier(.4,0,.2,1)}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{font-size:16px;-webkit-font-smoothing:antialiased}
body{font-family:'Inter',-apple-system,sans-serif;background:var(--bg);color:var(--tx);min-height:100vh;line-height:1.6}
a{color:var(--ac);text-decoration:none;transition:color var(--tr)}a:hover{color:#33ffb8}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 22px;border-radius:var(--rs);background:var(--grad);color:#000;font:600 14px/1 'Inter',sans-serif;border:none;cursor:pointer;transition:all var(--tr);text-decoration:none}
.btn:hover{transform:scale(1.03);box-shadow:0 0 20px var(--acg);color:#000}
.btn-full{width:100%}.btn-sm{padding:8px 16px;font-size:13px;border-radius:var(--rx)}
.btn-danger{background:var(--rd)}.btn-danger:hover{box-shadow:0 0 20px var(--rdd)}
.btn-sec{background:var(--cd);color:var(--tx2);border:1px solid var(--bd)}.btn-sec:hover{color:var(--tx1);transform:none;box-shadow:none}
.btn-ghost{background:none;border:1px solid var(--ba);color:var(--ac)}.btn-ghost:hover{background:var(--acd);transform:none;box-shadow:none;color:var(--ac)}

.alert{padding:12px 16px;border-radius:var(--rx);font-size:14px;margin-bottom:16px}
.alert-err{background:var(--rdd);color:var(--rd);border:1px solid rgba(255,77,77,.15)}

/* HOME */
.pg-home{display:flex;flex-direction:column;min-height:100vh}
.home-wrap{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px 80px;max-width:680px;margin:0 auto;width:100%}
.acct-bar{position:fixed;top:14px;right:18px;z-index:100}
.acct-ok{display:flex;align-items:center;gap:7px;padding:7px 14px;border-radius:var(--rs);background:rgba(0,255,163,.06);border:1px solid rgba(0,255,163,.12);color:var(--ac);font:500 13px 'Inter';backdrop-filter:blur(12px)}
.acct-no{display:flex;align-items:center;gap:7px;padding:7px 14px;border-radius:var(--rs);background:rgba(255,77,77,.06);border:1px solid rgba(255,77,77,.12);color:var(--rd);font:500 13px 'Inter';backdrop-filter:blur(12px)}
.acct-ul{background:none;border:none;color:var(--tx3);font:500 12px 'Inter';cursor:pointer;text-decoration:underline}.acct-ul:hover{color:var(--tx2)}
.home-logo{text-align:center;margin-bottom:36px}
.home-logo h1{font-size:40px;font-weight:800;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:12px 0 4px;letter-spacing:-.5px}
.home-logo p{font-size:15px;color:var(--tx2)}

.home-sf{width:100%;position:relative;margin-bottom:28px}
.home-si-wrap{display:flex;align-items:center;background:var(--cd);border:1px solid var(--ba);border-radius:26px;padding:0 8px 0 18px;transition:all var(--tr)}
.home-si-wrap:focus-within{border-color:var(--ac);box-shadow:0 0 0 4px var(--acd),0 8px 28px rgba(0,0,0,.4)}
.home-si-icon{color:var(--tx3);flex-shrink:0;transition:color var(--tr)}.home-si-wrap:focus-within .home-si-icon{color:var(--ac)}
.home-si{flex:1;background:none;border:none;outline:none;color:var(--tx1);font:16px 'Inter';padding:15px 10px}.home-si::placeholder{color:var(--tx3)}.home-si:disabled{opacity:.35;cursor:not-allowed}
.home-sbtn{width:38px;height:38px;border-radius:50%;background:var(--grad);border:none;color:#000;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--tr);flex-shrink:0}.home-sbtn:hover{transform:scale(1.06);box-shadow:0 0 14px var(--acg)}.home-sbtn:disabled{opacity:.25;cursor:not-allowed;transform:none;box-shadow:none}

.sug-drop{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--cd);border:1px solid var(--ba);border-radius:var(--rs);overflow:hidden;z-index:100;display:none;box-shadow:0 10px 36px rgba(0,0,0,.5)}.sug-drop.vis{display:block}
.sug-section{border-bottom:1px solid var(--bd);padding:6px 0}.sug-section:last-child{border-bottom:none}
.sug-label{padding:5px 16px;font:600 11px 'Inter';color:var(--ac);text-transform:uppercase;letter-spacing:.5px}
.sug-item{display:flex;align-items:center;gap:10px;padding:9px 16px;cursor:pointer;transition:background var(--tr);color:var(--tx);font-size:14px}.sug-item:hover{background:rgba(255,255,255,.04)}
.sug-ic{width:30px;height:30px;border-radius:7px;background:var(--acd);display:flex;align-items:center;justify-content:center;color:var(--ac);flex-shrink:0}
.sug-t{font-weight:500;display:block;font-size:13px}.sug-u{font-size:11px;color:var(--tx3);display:block}

.need-link{background:var(--cd);border:1px solid var(--ba);border-radius:var(--r);padding:28px;text-align:center;max-width:440px;width:100%;margin-bottom:28px}
.need-link h3{font-size:17px;margin:12px 0 6px;color:var(--tx1)}.need-link p{font-size:14px;color:var(--tx2);margin-bottom:18px;line-height:1.6}

.home-srv-wrap{width:100%;max-width:640px;margin-top:4px}
.home-srv-wrap h3{font:600 13px 'Inter';color:var(--tx3);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}
.home-srv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:7px}
.home-srv{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--rs);background:var(--cd);border:1px solid var(--bd);transition:all var(--tr);color:var(--tx)}.home-srv:hover{border-color:var(--ba);background:var(--cd2);transform:translateY(-1px);color:var(--tx)}
.home-srv-ic{width:34px;height:34px;border-radius:8px;background:var(--acd);display:flex;align-items:center;justify-content:center;color:var(--ac);flex-shrink:0}
.home-srv-t{font:600 12px 'Inter';display:block}.home-srv-u{font-size:11px;color:var(--tx3);display:block}

.ft{padding:18px;text-align:center;display:flex;align-items:center;justify-content:center;gap:20px;font-size:12px;color:var(--tx3)}.ft a{color:var(--tx2)}.ft a:hover{color:var(--ac)}

/* HEADER */
.hdr{position:sticky;top:0;background:rgba(10,10,10,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--bd);z-index:100}
.hdr-in{max-width:920px;margin:0 auto;padding:10px 18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.hdr-logo{flex-shrink:0}
.hdr-sf{flex:1;min-width:160px;max-width:520px;display:flex;align-items:center;gap:7px;background:var(--bg2);border:1px solid var(--bd);border-radius:22px;padding:0 14px;transition:all var(--tr)}.hdr-sf:focus-within{border-color:var(--ac);box-shadow:0 0 0 3px var(--acd)}
.hdr-si{color:var(--tx3);flex-shrink:0}
.hdr-input{flex:1;background:none;border:none;outline:none;color:var(--tx1);font:14px 'Inter';padding:9px 0}.hdr-input::placeholder{color:var(--tx3)}
.hdr-tabs{display:flex;gap:2px;flex-shrink:0}
.hdr-tab{display:flex;align-items:center;gap:5px;padding:7px 12px;border-radius:var(--rx);font:500 13px 'Inter';color:var(--tx2);transition:all var(--tr)}.hdr-tab:hover{color:var(--tx1);background:rgba(255,255,255,.04)}.hdr-tab.active{color:var(--ac);background:var(--acd)}
.hdr-right{display:flex;gap:6px;flex-shrink:0;margin-left:auto}
.hdr-btn{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--tx2);transition:all var(--tr)}.hdr-btn:hover{background:rgba(255,255,255,.06);color:var(--tx1)}
.hdr-avatar{width:34px;height:34px;border-radius:50%;background:var(--acd);display:flex;align-items:center;justify-content:center}

/* RESULTS */
.res-main{padding:20px 18px 40px}
.res-container{max-width:700px;margin:0 auto}.res-wide{max-width:1100px}
.res-meta{font-size:13px;color:var(--tx3);margin-bottom:16px}
.res-cached{background:var(--acd);color:var(--ac);padding:2px 6px;border-radius:4px;font-size:11px;font-weight:600;margin-left:4px}

.nsx-block{margin-bottom:20px}
.nsx-label{display:flex;align-items:center;gap:5px;font:600 11px 'Inter';color:var(--ac);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}
.nsx-card{display:flex;align-items:center;gap:12px;padding:14px 18px;background:rgba(0,255,163,.03);border:1px solid rgba(0,255,163,.1);border-radius:var(--rs);margin-bottom:6px;transition:all var(--tr);color:var(--tx)}.nsx-card:hover{background:rgba(0,255,163,.06);border-color:rgba(0,255,163,.18);transform:translateY(-1px);color:var(--tx)}
.nsx-ic{width:38px;height:38px;border-radius:9px;background:var(--acd);display:flex;align-items:center;justify-content:center;color:var(--ac);flex-shrink:0}
.nsx-info{flex:1;min-width:0}.nsx-t{font:600 14px 'Inter';color:var(--tx1);display:block}.nsx-d{font-size:13px;color:var(--tx2);display:block;margin-top:1px}.nsx-u{font-size:12px;color:var(--ac);display:block;margin-top:3px}
.nsx-badge{padding:3px 8px;border-radius:5px;background:var(--acd);color:var(--ac);font:700 10px 'Inter';text-transform:uppercase;flex-shrink:0}

.nr-card{background:rgba(0,255,163,.02);border:1px solid rgba(0,255,163,.08);border-radius:var(--rs);padding:18px;margin-bottom:8px}
.nr-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;background:var(--acd);color:var(--ac);font:600 10px 'Inter';text-transform:uppercase;margin-bottom:8px}
.nr-head{display:flex;align-items:center;gap:8px;margin-bottom:5px}
.nr-fav{width:24px;height:24px;border-radius:5px;background:var(--acd);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.nr-name{font:500 12px 'Inter';display:block}.nr-url{font-size:11px;color:var(--tx3);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nr-title{font:600 17px/1.35 'Inter';color:var(--ac);display:block;margin-bottom:5px}.nr-title:hover{color:#33ffb8;text-decoration:underline}
.nr-desc{font-size:14px;color:var(--tx2);line-height:1.55}

.res-card{padding:16px 0;border-bottom:1px solid var(--bd)}.res-card:last-child{border-bottom:none}
.res-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}
.res-fav{width:18px;height:18px;border-radius:4px;flex-shrink:0}
.res-name{font:500 12px 'Inter';display:block}.res-url{font-size:11px;color:var(--tx3);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:400px}
.res-title{font:600 17px/1.35 'Inter';color:#7eb8ff;display:block;margin-bottom:4px}.res-title:hover{color:#a8d0ff;text-decoration:underline}
.res-desc{font-size:14px;color:var(--tx2);line-height:1.55}

.res-div{display:flex;align-items:center;gap:14px;margin:20px 0;color:var(--tx3);font-size:12px}.res-div::before,.res-div::after{content:'';flex:1;height:1px;background:var(--bd)}
.res-empty{text-align:center;padding:50px 20px}.res-empty h3{font-size:17px;margin:14px 0 6px}.res-empty p{color:var(--tx2);font-size:14px}

.pag{display:flex;align-items:center;justify-content:center;gap:10px;padding:24px 0;flex-wrap:wrap}
.pag-btn{padding:8px 14px;border-radius:var(--rx);background:var(--cd);border:1px solid var(--bd);color:var(--tx2);font:500 13px 'Inter';transition:all var(--tr)}.pag-btn:hover{color:var(--tx1);border-color:rgba(255,255,255,.12)}
.pag-cur{font:500 13px 'Inter';color:var(--tx3)}

/* IMAGES */
.img-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}
.img-card{border-radius:var(--rs);overflow:hidden;background:var(--cd);border:1px solid var(--bd);cursor:pointer;transition:all var(--tr)}.img-card:hover{border-color:var(--ba);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.4)}
.img-wrap{aspect-ratio:4/3;overflow:hidden;background:var(--bg2)}.img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.img-card:hover .img-wrap img{transform:scale(1.05)}
.img-info{padding:8px 10px}.img-dom{font-size:11px;color:var(--tx3);display:block;margin-bottom:2px}.img-t{font-size:12px;color:var(--tx2);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.lb{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.88);backdrop-filter:blur(6px);z-index:2000;display:none;align-items:center;justify-content:center;padding:20px}.lb.vis{display:flex}
.lb-x{position:absolute;top:16px;right:20px;background:none;border:none;color:#fff;font-size:32px;cursor:pointer;z-index:10;opacity:.7;transition:opacity var(--tr)}.lb-x:hover{opacity:1}
.lb-body{max-width:900px;width:100%;text-align:center}
.lb-img{max-width:100%;max-height:75vh;border-radius:var(--rs);object-fit:contain}
.lb-info{margin-top:16px}#lbTitle{color:var(--tx);font-size:14px;margin-bottom:12px}
.lb-acts{display:flex;gap:8px;justify-content:center}

/* LINK PAGE */
.pg-link{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px}
.lk-overlay{width:100%;display:flex;justify-content:center}
.lk-modal{background:var(--cd);border:1px solid var(--ba);border-radius:var(--r);max-width:460px;width:100%;padding:28px;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.lk-logo{text-align:center;margin-bottom:20px;display:flex;flex-direction:column;align-items:center;gap:10px}.lk-logo h2{font-size:20px;font-weight:700}
.lk-modal h3{font-size:19px;font-weight:600;text-align:center;margin-bottom:6px}
.lk-sub{font-size:14px;color:var(--tx2);text-align:center;line-height:1.5;margin-bottom:20px}
.lk-info{background:var(--bg);border-radius:var(--rs);padding:14px 18px;margin-bottom:18px}
.lk-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;font-size:14px;color:var(--tx2)}
.lk-val{font-weight:600;color:var(--tx1)}.lk-accent{color:var(--ac)}.lk-key{font-family:monospace;font-size:12px;color:var(--ac)}
.lk-perms{margin-bottom:22px}.lk-perms h4{font-size:13px;font-weight:600;margin-bottom:10px}
.lk-perm{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:13px;color:var(--tx2)}
.lk-btns{display:flex;flex-direction:column;gap:8px}
.lk-spin{width:44px;height:44px;border:3px solid var(--bd);border-top-color:var(--ac);border-radius:50%;animation:spin .7s linear infinite;margin:0 auto 14px}
@keyframes spin{to{transform:rotate(360deg)}}
.lk-ok,.lk-err,.lk-cancel{text-align:center;margin-bottom:14px}
.lk-ok{animation:pulse 2s infinite}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.65}}
.lk-home{display:block;text-align:center;margin-top:14px;font-size:14px;color:var(--tx2)}

/* BLOCKED */
.pg-blocked{display:flex;align-items:center;justify-content:center;min-height:100vh}
.blk{text-align:center;max-width:380px;padding:40px 20px}.blk h1{font-size:22px;margin:18px 0 6px;color:var(--rd)}.blk p{color:var(--tx2)}

/* HISTORY */
.hist-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;gap:10px}.hist-hdr h2{font-size:20px;font-weight:700}
.hist-item{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--bd);color:var(--tx);transition:background var(--tr);gap:12px}.hist-item:hover{background:rgba(255,255,255,.02)}
.hist-left{display:flex;align-items:center;gap:10px;min-width:0;flex:1}
.hist-q{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hist-type{font-size:10px;color:var(--ac);background:var(--acd);padding:2px 6px;border-radius:3px;flex-shrink:0}
.hist-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.hist-t{font-size:12px;color:var(--tx3)}.hist-d{font-size:12px;color:var(--tx3)}

@media(max-width:768px){
.home-logo h1{font-size:30px}.home-wrap{padding:50px 16px 80px}.home-srv-grid{grid-template-columns:1fr}
.acct-bar{position:static;text-align:center;padding:12px 16px 0}
.hdr-in{gap:8px}.hdr-tabs{order:10;width:100%;padding-top:4px}
.img-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:6px}
.hist-item{flex-direction:column;align-items:flex-start}.hist-right{align-self:flex-end}
.nsx-card{flex-wrap:wrap}.nsx-badge{order:-1}.res-url{max-width:200px}
}
@media(max-width:375px){.home-logo h1{font-size:26px}.lk-modal{padding:22px 18px}}

::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(255,255,255,.08);border-radius:3px}
::selection{background:var(--acd);color:var(--ac)}