:root{--green-950:#032b21;--green-900:#064e3b;--green-700:#0a6650;--green-600:#0e7a5c;--green-500:#13896a;--gold:#d4af37;--gold-600:#b8932a;--gold-100:#f6edc9;--bg:#f8f7f4;--card:#fff;--border:#e5e0d8;--text:#10231c;--muted:#6b7a74;--danger:#c0392b;--danger-bg:#fbeae8;--success:#1e8e5a;--radius:16px;--radius-sm:12px;--shadow:0 4px 16px #064e3b14;--shadow-lg:0 12px 32px #064e3b29;--font-head:"Poppins", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.5}h1,h2,h3,h4{font-family:var(--font-head);margin:0;line-height:1.25}h1{font-size:26px;font-weight:700}h2{font-size:19px;font-weight:700}h3{font-size:16px;font-weight:700}p{margin:0}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}img,svg{display:block}.muted{color:var(--muted)}.small{font-size:13px}.center{text-align:center}.row{align-items:center;gap:8px;display:flex}.row-between{justify-content:space-between;align-items:center;gap:8px;display:flex}.stack{flex-direction:column;gap:16px;display:flex}.stack-sm{flex-direction:column;gap:8px;display:flex}.grow{flex:1;min-width:0}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.gold{color:var(--gold)}.topbar{z-index:20;padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top,0px));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#f8f7f4eb;justify-content:space-between;align-items:center;gap:16px;display:flex;position:sticky;top:0}.brand{font-family:var(--font-head);align-items:center;gap:8px;font-size:20px;font-weight:800;display:flex}.brand-mark{background:linear-gradient(135deg, var(--green-600), var(--green-900));border-radius:11px;place-items:center;width:36px;height:36px;display:grid}.top-nav{gap:4px;display:none}.top-nav a{color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-weight:500;display:flex}.top-nav a.active{background:var(--gold);color:var(--green-950);font-weight:600}.avatar-sm{background:var(--green-900);color:#fff;border:2px solid var(--gold);border-radius:50%;place-items:center;width:36px;height:36px;font-size:13px;font-weight:600;display:grid}.page{max-width:760px;margin:0 auto;padding:20px 16px 110px}.bottom-nav{z-index:20;padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);background:#fff;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #064e3b0f}.bottom-nav a{min-width:64px;color:var(--muted);border-radius:14px;flex-direction:column;align-items:center;gap:2px;padding:6px 12px;font-size:11px;font-weight:500;display:flex}.bottom-nav a.active{color:var(--green-900);font-weight:600}.bottom-nav a.active .nav-ico{background:var(--gold);color:var(--green-950)}.nav-ico{border-radius:999px;place-items:center;width:40px;height:28px;display:grid}@media (width>=900px){.page{max-width:980px;padding:28px 24px 48px}.bottom-nav{display:none}.top-nav{display:flex}.topbar{padding-left:max(24px,50vw - 466px);padding-right:max(24px,50vw - 466px)}.list-grid{grid-template-columns:1fr 1fr}}.btn{border:1.5px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:8px;height:48px;padding:0 20px;font-size:15px;font-weight:600;transition:transform 50ms,box-shadow .15s,background .15s;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-block{width:100%}.btn-sm{border-radius:10px;height:36px;padding:0 14px;font-size:13px}.btn-primary{background:var(--green-900);color:#fff}.btn-primary:hover:not(:disabled){background:var(--green-700)}.btn-gold{background:var(--gold);color:var(--green-950)}.btn-gold:hover:not(:disabled){background:#e0bb43}.btn-outline{color:var(--green-900);border-color:var(--border);background:#fff}.btn-outline:hover:not(:disabled){border-color:var(--green-700)}.btn-danger{background:var(--danger-bg);color:var(--danger)}.btn-danger-solid{background:var(--danger);color:#fff}.icon-btn{border:1px solid var(--border);width:36px;height:36px;color:var(--green-900);background:#fff;border-radius:10px;place-items:center;display:grid}.icon-btn:hover{border-color:var(--green-700)}.icon-btn.danger{color:var(--danger)}.back-btn{color:var(--muted);background:0 0;border:0;align-items:center;gap:4px;margin-bottom:12px;padding:0;font-weight:500;display:inline-flex}.field{flex-direction:column;gap:6px;display:flex}.field label{font-size:13px;font-weight:600}.input,.select,.textarea{border-radius:var(--radius-sm);border:1.5px solid var(--border);width:100%;height:48px;color:var(--text);font:inherit;background:#fff;outline:none;padding:0 14px}.textarea{resize:vertical;height:auto;min-height:96px;padding:12px 14px}.input:focus,.select:focus,.textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #d4af3738}.input-wrap{position:relative}.input-wrap .input{padding-left:44px}.input-wrap>svg{color:var(--muted);position:absolute;top:50%;left:14px;transform:translateY(-50%)}.input-wrap .toggle{color:var(--muted);background:0 0;border:0;padding:8px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.form-error{border-radius:var(--radius-sm);background:var(--danger-bg);color:var(--danger);padding:10px 14px;font-size:13px;font-weight:500}.hint{color:var(--muted);font-size:12px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.card-flat{box-shadow:none}.chips{scrollbar-width:none;gap:8px;padding:2px 0 6px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{border:1.5px solid var(--border);color:var(--text);white-space:nowrap;background:#fff;border-radius:999px;flex:none;padding:8px 14px;font-size:13px;font-weight:500}.chip.active{background:var(--gold);border-color:var(--gold);color:var(--green-950);font-weight:600}.badge{background:var(--gold-100);color:var(--gold-600);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.tag{color:var(--green-700);background:#eef5f2;border-radius:999px;padding:3px 10px;font-size:12px;display:inline-block}.tags{flex-wrap:wrap;gap:6px;display:flex}.progress{background:#fff3;border-radius:999px;height:8px;overflow:hidden}.progress>span{background:var(--gold);border-radius:999px;height:100%;transition:width .3s;display:block}.progress.light{background:var(--gold-100)}.storage-card{border-radius:var(--radius);color:#fff;background:linear-gradient(135deg, var(--green-600), var(--green-900));box-shadow:var(--shadow-lg);padding:20px;position:relative;overflow:hidden}.storage-card:after{content:"";border:1.5px solid #ffffff24;border-radius:50%;width:160px;height:160px;position:absolute;top:-40px;right:-40px}.storage-card .lock{width:40px;height:40px;color:var(--gold);background:#ffffff24;border-radius:12px;place-items:center;display:grid}.storage-card .big{font-family:var(--font-head);font-size:22px;font-weight:700}.list-grid{gap:12px;display:grid}.res-card{cursor:pointer;gap:12px;padding:14px;transition:transform .12s,box-shadow .12s;display:flex}.res-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.file-ico{width:46px;height:46px;color:var(--green-700);background:#eef5f2;border-radius:14px;flex:none;place-items:center;display:grid}.file-ico.gold{background:var(--gold-100);color:var(--gold-600)}.res-title{overflow-wrap:anywhere;font-size:15px;font-weight:600}.meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:12px;display:flex}.meta span{align-items:center;gap:4px;display:inline-flex}.file-row{align-items:center;gap:12px;padding:12px 14px;display:flex}.file-actions{flex:none;gap:6px;display:flex}.ai-box{border-radius:var(--radius);border:1px solid var(--border);background:linear-gradient(135deg,#f1f8f5,#fbf6e4);padding:16px}.ai-box h3{align-items:center;gap:8px;margin-bottom:8px;display:flex}.drop{text-align:center;border:2px dashed var(--border);border-radius:var(--radius);cursor:pointer;background:#fff;flex-direction:column;align-items:center;gap:8px;padding:28px 16px;display:flex}.drop.over,.drop:hover{border-color:var(--gold);background:#fffdf5}.drop .ico{background:var(--gold-100);width:56px;height:56px;color:var(--gold-600);border-radius:18px;place-items:center;display:grid}.picked{border-radius:var(--radius-sm);background:#eef5f2;align-items:center;gap:12px;padding:12px 14px;display:flex}.skeleton{border-radius:var(--radius);background:linear-gradient(90deg,#eeeae2 25%,#f6f3ec 50%,#eeeae2 75%) 0 0/200% 100%;height:86px;animation:1.2s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.empty{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:8px;padding:36px 16px;display:flex}.empty .ico{width:64px;height:64px;color:var(--green-700);background:#eef5f2;border-radius:20px;place-items:center;display:grid}.spinner{border:3px solid #064e3b26;border-top-color:var(--green-900);border-radius:50%;width:22px;height:22px;animation:.7s linear infinite spin}.btn .spinner{border-color:#fff #fff6 #fff6;width:18px;height:18px}@keyframes spin{to{transform:rotate(360deg)}}.page-loader{place-items:center;min-height:60vh;display:grid}.toasts{z-index:100;flex-direction:column;gap:8px;width:min(92vw,420px);display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.toast{box-shadow:var(--shadow-lg);border:1px solid var(--border);background:#fff;border-radius:14px;align-items:center;gap:10px;padding:12px 16px;font-size:14px;font-weight:500;display:flex}.toast-success svg{color:var(--success)}.toast-error svg{color:var(--danger)}.overlay{z-index:60;background:#032b218c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{width:min(100%,420px);box-shadow:var(--shadow-lg);background:#fff;border-radius:20px;flex-direction:column;gap:16px;padding:20px;display:flex}.splash{color:#fff;background:radial-gradient(circle at 50% 40%,#13896a 0%,#0a6650 45%,#064e3b 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;display:flex;position:relative;overflow:hidden}.ring{border:1.5px solid #ffffff1f;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ring.r1{width:300px;height:300px}.ring.r2{border-color:#ffffff14;width:520px;height:520px}.ring.r3{border-color:#ffffff0d;width:780px;height:780px}.splash-tile{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff24;border:1px solid #ffffff38;border-radius:26px;place-items:center;width:88px;height:88px;animation:.7s both pop;display:grid;position:relative;box-shadow:0 10px 30px #0000002e}.splash-title{font-family:var(--font-head);letter-spacing:-.5px;margin-top:24px;font-size:42px;font-weight:800;animation:.7s .15s both rise;position:relative}.splash-sub{letter-spacing:.32em;color:#ffffffbf;margin-top:8px;font-size:11px;font-weight:500;animation:.7s .3s both rise;position:relative}.splash-dots{bottom:calc(28px + env(safe-area-inset-bottom,0px));gap:6px;display:flex;position:absolute}.splash-dots i{background:#ffffff59;border-radius:99px;width:8px;height:8px}.splash-dots i:first-child{background:var(--gold);width:22px}@keyframes pop{0%{opacity:0;transform:scale(.8)}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}.auth-hero{padding:calc(48px + env(safe-area-inset-top,0px)) 24px 96px;color:#fff;text-align:center;background:radial-gradient(circle at 50% 0,#13896a 0%,#0a6650 50%,#064e3b 100%);position:relative;overflow:hidden}.auth-hero .ring.r1{width:260px;height:260px;top:40%}.auth-hero .ring.r2{width:460px;height:460px;top:40%}.auth-hero .tile{background:#ffffff24;border:1px solid #ffffff38;border-radius:20px;place-items:center;width:64px;height:64px;display:inline-grid;position:relative}.auth-hero h1{margin-top:16px;font-size:28px;font-weight:800;position:relative}.auth-hero p{color:#fffc;margin-top:4px;position:relative}.auth-card{border:1px solid var(--border);max-width:440px;box-shadow:var(--shadow-lg);background:#fff;border-radius:24px;margin:-56px 16px 32px;padding:24px 20px;position:relative}@media (width>=480px){.auth-card{margin-left:auto;margin-right:auto}}.profile-head{flex-direction:column;align-items:center;gap:8px;padding:8px 0 4px;display:flex}.avatar-lg{width:92px;height:92px;font-family:var(--font-head);color:#fff;background:linear-gradient(135deg, var(--green-600), var(--green-900));border:4px solid var(--gold);box-shadow:var(--shadow);border-radius:50%;place-items:center;font-size:32px;font-weight:700;display:grid}.menu-item{text-align:left;width:100%;color:var(--text);background:0 0;border:0;align-items:center;gap:12px;padding:14px 16px;font-size:15px;font-weight:500;display:flex}.menu-item+.menu-item{border-top:1px solid var(--border)}.menu-card{padding:0;overflow:hidden}
