:root{--bg:#10121a;--card:#1a1d28;--line:#303442;--text:#f6f7fb;--muted:#9296a7;--accent:#a58aff;--accent2:#765ce6;--soft:#332b51;--ok:#85e0b1;color-scheme:dark}body.light{--bg:#f6f6fb;--card:#fff;--line:#e1e2ea;--text:#181927;--muted:#737688;--accent:#7256d6;--accent2:#6248c7;--soft:#eee9ff;--ok:#187c54;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#080a0e;color:var(--text);font-family:Manrope,Arial,sans-serif}.app{max-width:620px;min-height:100vh;margin:auto;padding-bottom:85px;background:var(--bg);overflow:hidden}.header,.detail-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px}.header{height:75px}.brand{display:flex;align-items:center;gap:9px;color:var(--text);text-decoration:none}.logo{display:grid;place-items:center;width:39px;height:39px;border-radius:13px;color:#fff;background:linear-gradient(140deg,#beaaff,#6e55e8);font-size:21px}.brand b,.brand small{display:block}.brand b{font-size:14px}.brand small{margin-top:1px;color:var(--muted);font-size:9px}.theme-toggle{position:relative;width:44px;height:35px;border:1px solid var(--line);border-radius:11px;color:var(--text);background:var(--card);cursor:pointer}.theme-toggle span{position:absolute;z-index:1;top:7px;font-size:17px}.theme-toggle span:first-child{left:6px}.theme-toggle span:last-child{right:6px}.theme-toggle:after{content:'';position:absolute;top:4px;left:4px;width:25px;height:25px;border-radius:8px;background:var(--accent);transition:.25s}.light .theme-toggle:after{left:13px}.hero{padding:39px 20px 27px;background:radial-gradient(circle at 90% 0,#5541a160,transparent 45%),linear-gradient(125deg,#17162a,var(--bg) 76%)}.light .hero{background:radial-gradient(circle at 90% 0,#cfc2ff,transparent 45%),linear-gradient(125deg,#f0edff,var(--bg) 76%)}h1{margin:0;font-size:34px;line-height:1.13;letter-spacing:-1.6px}.hero em{color:var(--accent);font-style:normal}.hero>p{max-width:340px;margin:12px 0 20px;color:var(--muted);font-size:12px;line-height:1.7}.search{display:flex;align-items:center;gap:9px;height:54px;padding:0 14px;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:0 12px 27px #0002}.search>span{font-size:25px;color:var(--muted)}.search input{flex:1;min-width:0;border:0;outline:0;color:var(--text);background:transparent;font:500 12px Manrope}.search input::placeholder{color:var(--muted)}.search button{border:0;color:var(--muted);background:none;font-size:21px;cursor:pointer}.search-count{min-height:13px;margin:8px 2px 0!important;color:var(--accent)!important;font-size:9px!important}.section{padding:28px 20px 0}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.heading h2{margin:0;font-size:18px;letter-spacing:-.6px}.heading button{border:0;color:var(--accent);background:none;font:700 10px Manrope;cursor:pointer}.list{display:grid;gap:8px}.config-card{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid var(--line);border-radius:15px;color:var(--text);background:var(--card);text-decoration:none;transition:.2s}.config-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 12px 25px #0002}.file{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:12px;color:#d0c5ff;background:var(--soft);font-size:18px}.info{min-width:0;flex:1}.info h3{overflow:hidden;margin:0;white-space:nowrap;text-overflow:ellipsis;font-size:12px}.info p{margin:3px 0 0;color:var(--muted);font-size:9px}.badge{display:inline-block;margin-top:6px;padding:3px 6px;border-radius:5px;color:var(--accent);background:var(--soft);font-size:8px;font-weight:800}.view{display:grid;place-items:center;width:33px;height:30px;border-radius:9px;color:var(--accent);background:var(--soft);font-size:10px;font-weight:800}.categories{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.category{padding:14px;border:1px solid var(--line);border-radius:15px;color:var(--text);text-align:left;background:var(--card);cursor:pointer}.category span{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;color:#fff;background:var(--cat);font-size:13px}.category b,.category small{display:block}.category b{margin-top:12px;font-size:13px}.category small{margin-top:3px;color:var(--muted);font-size:9px}.empty,.loading{padding:28px 20px;color:var(--muted);font-size:12px;text-align:center}.bottom-nav{position:fixed;z-index:3;bottom:0;left:50%;display:flex;justify-content:space-around;width:min(620px,100%);padding:10px 15px max(11px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(14px);transform:translateX(-50%)}.bottom-nav a,.bottom-nav button{display:grid;gap:3px;border:0;color:var(--muted);background:none;text-decoration:none;font:700 9px Manrope;text-align:center;cursor:pointer}.bottom-nav span{font-size:19px;line-height:18px}.bottom-nav .active{color:var(--accent)}.bottom-nav .active span{padding:3px 11px;border-radius:8px;color:#fff;background:var(--accent2)}.detail-header{height:68px;border-bottom:1px solid var(--line)}.detail-header b{font-size:12px}.back{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;color:var(--text);background:var(--card);text-decoration:none;font-size:30px;line-height:1}.detail-hero{padding:30px 20px 24px;background:radial-gradient(circle at 94% 0,#5442a366,transparent 45%),var(--bg)}.type{display:inline-block;padding:5px 7px;border-radius:6px;color:var(--accent);background:var(--soft);font:9px 'DM Mono',monospace}.detail-hero h1{margin:14px 0 6px;font-size:29px}.detail-hero p{margin:0;color:var(--muted);font-size:12px}.detail-content{padding:23px 20px}.meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.meta{padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--card)}.meta small,.meta b{display:block}.meta small{color:var(--muted);font-size:8px}.meta b{margin-top:4px;font-size:11px}.block{margin-top:28px}.block h2{margin:0 0 10px;font-size:14px}.block p{margin:0;color:var(--muted);font-size:11px;line-height:1.75}.screen-form{margin-top:12px;padding:18px;border:1px dashed #7866c9;border-radius:14px;background:color-mix(in srgb,var(--accent) 5%,transparent);text-align:center}.screen-form input{display:none}.screen-form label{display:block;cursor:pointer}.screen-form label span{display:grid;place-items:center;width:37px;height:37px;margin:auto;border-radius:12px;color:#d6cbff;background:#4c3d91;font-size:19px}.screen-form b,.screen-form small{display:block}.screen-form b{margin-top:8px;font-size:11px}.screen-form small{margin-top:4px;color:var(--muted);font-size:9px}.screen-message{margin:9px 0 0;color:var(--ok);font-size:10px}.previews{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.previews img{width:100%;aspect-ratio:1;object-fit:cover;border:1px solid var(--line);border-radius:10px}.download-dock{position:fixed;z-index:3;bottom:0;left:50%;width:min(620px,100%);padding:13px 20px max(13px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(14px);transform:translateX(-50%)}.download-dock a{display:flex;justify-content:center;align-items:center;padding:14px;border-radius:13px;color:#171328;background:linear-gradient(100deg,#bbaaff,#8871ee);text-decoration:none;font-size:12px;font-weight:800}.download-dock span{margin-left:9px;font-size:18px}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:var(--bg)}.login-card{width:min(380px,100%);padding:27px;border:1px solid var(--line);border-radius:18px;background:var(--card)}.login-card h1{margin:16px 0 5px;font-size:23px}.login-card p,.admin-copy{color:var(--muted);font-size:12px;line-height:1.65}.login-card label,.field{display:grid;gap:6px;margin-top:14px;font-size:10px;font-weight:800}.login-card input,.add-category input{padding:11px;border:1px solid var(--line);border-radius:9px;color:var(--text);background:var(--bg);font:12px Manrope}.login-card button,.primary{width:100%;margin-top:17px;padding:13px;border:0;border-radius:11px;color:#171328;background:linear-gradient(100deg,#bbaaff,#8871ee);font:800 11px Manrope;cursor:pointer}.error{display:block;margin-top:12px;color:#fa8294;font-size:10px}.admin-main{padding:33px 20px}.admin-main h1{font-size:30px}.eyebrow{margin:0 0 7px;color:var(--accent);font:9px 'DM Mono',monospace;letter-spacing:.8px}.admin-card{margin-top:18px;padding:15px;border:1px solid var(--line);border-radius:17px;background:var(--card)}.admin-card h2{margin:0;font-size:15px}.picker{display:grid;place-items:center;padding:26px 10px;border:1px dashed #7765c8;border-radius:13px;text-align:center;cursor:pointer}.picker span{font-size:25px;color:var(--accent)}.picker b,.picker small{display:block}.picker b{margin-top:6px;font-size:12px}.picker small{margin-top:4px;color:var(--muted);font-size:9px}.status,.message{min-height:15px;color:var(--accent);font-size:10px}.field select{padding:12px;border:1px solid var(--line);border-radius:10px;color:var(--text);background:var(--bg);font:12px Manrope}.add-category>div{display:flex;gap:7px;margin-top:11px}.add-category input{flex:1;min-width:0}.add-category button{padding:0 13px;border:0;border-radius:9px;color:#1c1731;background:#baaaff;font:800 10px Manrope;cursor:pointer}.admin-list{display:grid;gap:6px}.admin-row{padding:9px;border-bottom:1px solid var(--line)}.admin-row b,.admin-row small{display:block}.admin-row b{font-size:11px}.admin-row small{margin-top:3px;color:var(--muted);font-size:9px}.logout{color:var(--accent);font-size:10px;font-weight:800;text-decoration:none}@media(min-width:621px){body{padding:20px}.app{min-height:calc(100vh - 40px);border-radius:26px;box-shadow:0 22px 80px #0008}.bottom-nav,.download-dock{bottom:20px;border-radius:0 0 26px 26px}.bottom-nav{width:620px}}
