:root{--bg:#07100d;--panel:rgba(15,29,24,.78);--panel-solid:#102019;--line:rgba(183,229,203,.13);--text:#edf7f0;--muted:#91aa9d;--green:#72e39f;--green-dark:#173e29;--danger:#ff8b83;--shadow:0 24px 70px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;min-height:100vh;background:radial-gradient(circle at 20% 10%,#10291e 0,transparent 32%),var(--bg);color:var(--text);font-family:"Noto Sans TC",sans-serif;overflow-x:hidden}button,input,textarea,select{font:inherit}.ambient{position:fixed;width:420px;height:420px;border-radius:50%;filter:blur(110px);opacity:.12;pointer-events:none}.ambient-a{background:#32e47c;right:-100px;top:12%}.ambient-b{background:#2caeec;left:-180px;bottom:-130px}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,72px);border-bottom:1px solid var(--line);position:relative;z-index:2}.brand{display:flex;gap:12px;align-items:center;color:var(--text);text-decoration:none;font-weight:700;font-size:18px}.brand small{display:block;color:var(--muted);font:600 10px Manrope;letter-spacing:.16em}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid #55c986;border-radius:12px;color:var(--green);background:#10291d}.screen{min-height:calc(100vh - 78px);position:relative;z-index:1}.hidden{display:none!important}.auth-layout{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:8vw;max-width:1180px;margin:auto;padding:64px 32px}.hero-copy h1{font-size:clamp(46px,6vw,82px);line-height:1.08;letter-spacing:-.05em;margin:18px 0 28px}.hero-copy h1 em{font-style:normal;color:var(--green)}.hero-copy>p{max-width:600px;color:#b3c8bd;font-size:18px;line-height:1.85}.eyebrow{font:700 11px Manrope;color:var(--green);letter-spacing:.18em}.security-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.security-points span{border:1px solid var(--line);border-radius:99px;padding:8px 12px;color:#b6cabf;font-size:12px}.panel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(22px);border-radius:22px}.auth-card{padding:30px}.tabs{display:grid;grid-template-columns:1fr 1fr;background:#09150f;border-radius:12px;padding:4px;margin-bottom:24px}.tab{border:0;background:none;color:var(--muted);padding:10px;border-radius:9px;cursor:pointer}.tab.active{background:#1b3328;color:var(--text)}.button{border:1px solid var(--line);border-radius:11px;padding:10px 15px;color:var(--text);background:#13251d;cursor:pointer;transition:.2s}.button:hover{transform:translateY(-1px);border-color:rgba(114,227,159,.45)}.button.primary{background:var(--green);color:#062010;border-color:transparent;font-weight:700}.button.ghost{background:transparent}.button.google{width:100%;background:#f5faf6;color:#132219;font-weight:600}.button.google span{font:700 18px Manrope;margin-right:8px}.button.full{width:100%;margin-top:8px}.button.square{width:42px;height:42px;padding:0;font-size:22px}.button.danger{color:var(--danger);background:rgba(255,95,85,.08)}.divider{height:1px;background:var(--line);margin:28px 0;position:relative;text-align:center}.divider span{position:relative;top:-12px;background:#102019;padding:0 10px;color:var(--muted);font-size:11px}label{display:block;color:#a9bdb2;font-size:13px;margin:16px 0 6px}input,textarea,select{width:100%;margin-top:7px;border:1px solid var(--line);border-radius:11px;padding:12px 13px;background:#09150f;color:var(--text);outline:none}input:focus,textarea:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(114,227,159,.08)}textarea{resize:vertical}.form-hint,.warning{color:var(--muted);font-size:12px;line-height:1.6}.center-card{display:grid;place-items:center;padding:30px;text-align:center}.compact{width:min(450px,100%);padding:36px}.compact h2{font-size:28px;margin:12px 0}.compact p{color:var(--muted);line-height:1.65}.icon-lock{width:54px;height:54px;display:grid;place-items:center;margin:0 auto 22px;background:var(--green-dark);color:var(--green);border:1px solid #285b3c;border-radius:18px;font:700 16px Manrope}.otp{text-align:center;font:700 30px Manrope;letter-spacing:.28em;padding-left:.28em}.qr{width:190px;height:190px;background:white;padding:10px;border-radius:14px;margin:10px auto;display:block}details{font-size:12px;color:var(--muted);margin:12px 0}details code{display:block;overflow-wrap:anywhere;margin-top:8px}.session-actions{display:flex;align-items:center;gap:8px}.user-chip{font-size:12px;color:var(--muted);margin-right:8px}.vault-layout{display:grid;grid-template-columns:340px 1fr;gap:22px;padding:24px;max-width:1480px;margin:auto;height:calc(100vh - 78px)}.sidebar{display:flex;flex-direction:column;min-height:0;padding:20px}.vault-heading{display:flex;align-items:center;justify-content:space-between}.vault-heading h2{margin:4px 0 0}.search{position:relative;margin:20px 0 12px}.search span{position:absolute;left:13px;top:17px;color:var(--muted)}.search input{padding-left:36px}.filters{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.filter{border:0;background:transparent;color:var(--muted);padding:9px 4px;border-radius:9px;cursor:pointer;font-size:12px}.filter.active{background:#1a3026;color:var(--text)}.filter b{font:600 10px Manrope;color:var(--green);margin-left:3px}.entry-list{overflow-y:auto;margin:14px -8px 0;padding:0 8px;flex:1}.entry-item{width:100%;border:1px solid transparent;border-radius:13px;padding:12px;background:transparent;color:var(--text);text-align:left;cursor:pointer;display:grid;grid-template-columns:38px 1fr;gap:11px;margin-bottom:4px}.entry-item:hover,.entry-item.active{background:#172a22;border-color:var(--line)}.entry-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#20392e;color:var(--green)}.entry-item strong,.entry-item small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-item strong{font-size:13px}.entry-item small{color:var(--muted);margin-top:3px;font-size:11px}.sidebar-footer{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;border-top:1px solid var(--line);padding-top:14px}.status-dot{width:7px;height:7px;background:var(--green);box-shadow:0 0 10px var(--green);border-radius:50%}.icon-button{margin-left:auto;border:0;background:none;color:var(--muted);cursor:pointer;font-size:18px}.empty-state{align-self:center;text-align:center;color:var(--muted);max-width:480px;justify-self:center}.empty-state h2{color:var(--text);font-size:32px;margin:12px}.empty-state p{line-height:1.8}.empty-glyph{font-size:52px;color:var(--green)}.editor{padding:28px;overflow-y:auto}.editor form{max-width:760px;margin:auto}.editor-top{display:flex;justify-content:space-between;gap:12px;margin-bottom:24px}.editor-top select{width:auto;margin:0}.input-action{display:flex}.input-action input{border-radius:11px 0 0 11px}.input-action button{margin-top:7px;border:1px solid var(--line);background:#15271e;color:var(--muted);padding:0 10px;cursor:pointer}.input-action button:last-child{border-radius:0 11px 11px 0}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:#edf7f0;color:#102019;border-radius:10px;padding:11px 16px;font-size:13px;opacity:0;pointer-events:none;transition:.25s;z-index:9}.toast.show{opacity:1;transform:translate(-50%,0)}code{color:#a1edbd}@media(max-width:820px){.auth-layout{grid-template-columns:1fr;padding-top:40px}.hero-copy h1{font-size:48px}.hero-copy>p{font-size:15px}.vault-layout{grid-template-columns:1fr;height:auto;padding:12px}.sidebar{min-height:430px}.editor{min-height:600px}.topbar{padding:0 16px}.user-chip{display:none}}@media(max-width:480px){.session-actions .button{padding:8px}.auth-layout{padding:30px 16px}.hero-copy h1{font-size:40px}.security-points{display:none}.auth-card{padding:22px}.compact{padding:26px 20px}.vault-heading h2{font-size:20px}}
