*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0a0a0f;--panel:#14141c;--panel2:#1c1c28;--line:#2a2a3a;--accent:#7c5cff;--ok:#3ecf8e;--no:#ff6b6b;--text:#eef;--muted:#8a8aa0}html,body{background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}img{max-width:100%;display:block}.login{place-items:center;min-height:100vh;display:grid}.loginbox{background:var(--panel);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:12px;width:300px;padding:28px;display:flex}.loginbox h1{text-align:center;font-size:34px;font-weight:800}.loginbox h1 span{color:var(--accent)}.loginbox input,.loginbox button{border-radius:10px;padding:12px;font-size:15px}.loginbox input{border:1px solid var(--line);color:var(--text);background:#0f0f16;outline:none}.loginbox input:focus{border-color:var(--accent)}.loginbox button{background:var(--accent);color:#fff;cursor:pointer;border:none;font-weight:600}.app{max-width:1100px;margin:0 auto;padding:16px 18px 80px}.tabs{border-bottom:1px solid var(--line);align-items:center;gap:4px;margin-bottom:18px;display:flex}.tabs button,.tabs a{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:12px 14px;font-size:15px;text-decoration:none}.tabs button:hover,.tabs a:hover{color:var(--text)}.tabs button.on,.tabs a.on{color:var(--text);border-bottom-color:var(--accent)}.tabs .logout{color:var(--muted);margin-left:auto;font-size:13px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:14px;margin-bottom:22px;padding:16px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.row.end{justify-content:space-between}.lbl{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;min-width:74px;font-size:12px}.chips{flex-wrap:wrap;gap:7px;display:flex}.chip{background:var(--panel2);color:var(--muted);border:1px solid var(--line);cursor:pointer;border-radius:999px;padding:7px 14px;font-size:13px}.chip.small{padding:5px 11px;font-size:12px}.chip.on{background:var(--accent);color:#fff;border-color:var(--accent)}textarea{width:100%;color:var(--text);border:1px solid var(--line);resize:vertical;background:#0f0f16;border-radius:12px;outline:none;min-height:200px;padding:15px;font-family:inherit;font-size:15px;line-height:1.5;display:block}textarea:focus{border-color:var(--accent)}.counts{align-items:center;gap:6px;display:flex}.go{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:12px 22px;font-size:15px;font-weight:600}.go.small{padding:6px 14px;font-size:13px}.go:disabled{opacity:.5;cursor:default}.err{color:var(--no);font-size:14px}.muted{color:var(--muted);padding:20px}.linehdr{color:var(--muted);margin:8px 0 14px;font-size:13px}.grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;flex-direction:column;display:flex;position:relative;overflow:hidden}.card img{aspect-ratio:3/4;object-fit:cover;cursor:zoom-in;width:100%}.card .cap{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;padding:8px 10px;font-size:11px;display:-webkit-box;overflow:hidden}.card .cardbtns{gap:6px;margin:0 8px 8px;display:flex}.card .reuse{background:var(--panel2);color:var(--text);border:1px solid var(--line);cursor:pointer;white-space:nowrap;border-radius:8px;flex:1;padding:6px 8px;font-size:12px;transition:all .15s}.card .reuse:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.card.sel.picked{outline:2px solid var(--accent)}.pick{z-index:2;cursor:pointer;background:#00000080;border-radius:6px;padding:3px 5px;position:absolute;top:8px;left:8px}.pick input{width:17px;height:17px;accent-color:var(--accent);cursor:pointer}.review{gap:6px;padding:8px;display:flex}.review .ok{background:var(--ok);color:#06210f;cursor:pointer;border:none;border-radius:8px;flex:1;padding:9px;font-weight:700}.review .no{background:var(--panel2);color:var(--no);border:1px solid var(--line);cursor:pointer;border-radius:8px;padding:9px 13px}.ph{aspect-ratio:3/4;width:100%}.ph.fail{color:var(--no);place-items:center;font-size:13px;display:grid}.shimmer{background:linear-gradient(100deg,#14141c 30%,#20202e 50%,#14141c 70%) 0 0/200% 100%;animation:1.3s infinite sh}@keyframes sh{to{background-position:-200% 0}}.galbar{align-items:center;gap:8px;margin-bottom:14px;display:flex}.galbar .spacer{flex:1}.pager{color:var(--muted);justify-content:center;align-items:center;gap:16px;margin-top:22px;display:flex}.pager button{background:var(--panel2);color:var(--text);border:1px solid var(--line);cursor:pointer;border-radius:8px;padding:8px 14px}.pager button:disabled{opacity:.4;cursor:default}.lib{flex-direction:column;gap:8px;display:flex}.libitem{background:var(--panel);border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.libitem span{font-size:14px}.libbtns{gap:6px;display:flex}.libitem button{background:var(--panel2);color:var(--text);border:1px solid var(--line);cursor:pointer;border-radius:8px;padding:7px 14px}.activity{flex-direction:column;gap:24px;display:flex}.hero{text-align:center;padding:22px 0 6px}.herobig{letter-spacing:-2px;background:linear-gradient(#fff,#b7a6ff);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:72px;font-weight:800;line-height:1}.herolbl{color:var(--muted);margin-top:8px;font-size:13px}.hours2{background:var(--panel);border:1px solid var(--line);border-radius:14px;align-items:flex-end;gap:6px;height:180px;padding:16px 12px 10px;display:flex}.h2{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;height:100%;display:flex}.h2val{color:var(--text);height:14px;font-size:11px}.h2bar{flex:1;align-items:flex-end;width:100%;display:flex}.h2fill{background:linear-gradient(180deg,var(--accent),#5a3fd6);border-radius:4px 4px 0 0;width:100%;min-height:2px;transition:height .3s}.h2lbl{color:var(--muted);font-size:9px}.calhead{color:var(--muted);justify-content:center;align-items:center;gap:20px;font-size:15px;display:flex}.calhead button{background:var(--panel2);border:1px solid var(--line);color:var(--text);cursor:pointer;border-radius:8px;width:32px;height:32px}.calhead button:disabled{opacity:.35;cursor:default}.cal{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.cdow{text-align:center;color:var(--muted);padding:4px 0;font-size:11px}.ccell{aspect-ratio:1;border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:6px;position:relative}.ccell.empty{background:0 0;border:none}.ccell.today{border-color:var(--accent)}.cnum{color:var(--muted);font-size:11px}.ccount{place-items:center;font-size:16px;font-weight:800;display:grid;position:absolute;inset:0}.lightbox{z-index:50;cursor:zoom-out;background:#000000e6;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.lightbox img{object-fit:contain;border-radius:8px;max-width:96vw;max-height:96vh}.actions{align-items:center;gap:8px;display:flex}.ghost{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:11px 16px;font-size:14px;transition:all .15s}.ghost:hover:not(:disabled){color:var(--text);background:var(--panel2)}.ghost:disabled{opacity:.35;cursor:default}.parea{position:relative}.clearx{color:var(--muted);cursor:pointer;opacity:.55;background:0 0;border:none;border-radius:6px;width:26px;height:26px;font-size:14px;transition:all .15s;position:absolute;top:12px;right:12px}.clearx:hover{opacity:1;background:var(--panel2)}.linebar{justify-content:space-between;align-items:center;gap:12px;display:flex}.cancel{background:var(--panel2);color:var(--no);border:1px solid var(--no);cursor:pointer;border-radius:8px;padding:7px 14px;font-size:13px}.delx{z-index:2;color:#fff;cursor:pointer;background:#0000008c;border:none;border-radius:6px;width:26px;height:26px;font-size:13px;transition:all .15s;position:absolute;top:8px;right:8px}.delx:hover{background:var(--no);color:#3a0000}.cancelone{z-index:2;color:#fff;cursor:pointer;background:#0000008c;border:none;border-radius:8px;width:30px;height:30px;font-size:13px;transition:all .15s;position:absolute;top:8px;right:8px}.cancelone:hover{background:var(--no);color:#3a0000}.dropzone{border:2px dashed var(--line);text-align:center;min-height:120px;color:var(--muted);cursor:pointer;background:#0f0f16;border-radius:12px;justify-content:center;align-items:center;padding:20px;font-size:14px;display:flex}.dropzone:focus{border-color:var(--accent);outline:none}.insps{flex-wrap:wrap;gap:10px;width:100%;display:flex}.insp{border:1px solid var(--line);border-radius:8px;width:90px;height:120px;position:relative;overflow:hidden}.insp img{object-fit:cover;width:100%;height:100%}.insp .delx{width:22px;height:22px;top:4px;right:4px}.toggle{color:var(--text);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:flex}.toggle input{accent-color:var(--accent);width:16px;height:16px}.addref{border:2px dashed var(--line);width:90px;height:120px;color:var(--muted);cursor:pointer;background:#0f0f16;border-radius:8px;justify-content:center;align-items:center;font-size:26px;transition:all .15s;display:flex}.addref:hover{border-color:var(--accent);color:var(--text)}.card .reuse[download]:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.pcard{background:var(--panel);border:1px solid var(--line);border-radius:14px;flex-direction:column;display:flex;position:relative;overflow:hidden}.pcard img{aspect-ratio:3/4;object-fit:cover;cursor:zoom-in;width:100%}.pprompt{color:var(--text);-webkit-line-clamp:4;-webkit-box-orient:vertical;padding:10px 12px 6px;font-size:12px;display:-webkit-box;overflow:hidden}.pcat{gap:6px;padding:0 10px 10px;display:flex}.pcat input{border:1px solid var(--line);color:var(--text);background:#0f0f16;border-radius:8px;outline:none;flex:1;padding:8px 10px;font-size:12px}.pcat input:focus{border-color:var(--accent)}.pcat .copy{background:var(--panel2);color:var(--text);border:1px solid var(--line);cursor:pointer;border-radius:8px;padding:8px 12px;font-size:12px}.activity.compact{gap:18px}.activity.compact .atop{align-items:stretch;gap:18px;display:flex}.activity.compact .hero{background:var(--panel);border:1px solid var(--line);border-radius:16px;flex-direction:column;flex:0 0 280px;justify-content:center;padding:0;display:flex}.activity.compact .herobig{font-size:88px}.activity.compact .herolbl{font-size:14px}.activity.compact .hours2{flex:1;height:210px}.cal.compact{gap:7px}.cal.compact .ccell{aspect-ratio:auto;height:100px;padding:10px}.cal.compact .cnum{font-size:12px}.cal.compact .ccount{font-size:26px}
