:root{--bg:#fbfcfe;--text:#101828;--muted:#667085;--line:#e4e7ec;--blue:#1557ff;--blue-dark:#0a46e8;--blue-soft:#f0f5ff;--danger:#df3f45;--shadow:0 10px 32px rgba(16,24,40,.08)}
*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,"PingFang SC","Microsoft YaHei",Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input{font:inherit}.hidden{display:none!important}.visually-hidden{position:fixed;left:-9999px;width:1px;height:1px;opacity:0}
.topbar{height:64px;padding:0 42px;display:flex;align-items:center;gap:44px;position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-size:21px}.logo{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:linear-gradient(145deg,#2767ff,#0d48e9);box-shadow:0 6px 16px rgba(21,87,255,.24);color:#fff;font-size:10px;font-weight:800}.topbar nav{align-self:stretch;display:flex}.topbar nav a{min-width:120px;padding:0 22px;display:grid;place-items:center;border-bottom:3px solid transparent;color:#475467;text-decoration:none;font-size:14px}.topbar nav a:hover{background:#f8faff}.topbar nav a.active{color:var(--blue);background:linear-gradient(180deg,#f6f8ff,#fff);border-bottom-color:var(--blue)}.avatar{margin-left:auto;width:38px;height:38px;border:0;border-radius:50%;background:#14213d;color:#fff;cursor:pointer;font-weight:700;box-shadow:0 0 0 3px #f2f4f7}
.page{width:min(1360px,calc(100% - 84px));margin:auto;padding:48px 0 80px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:32px}.page-heading h1{margin:0 0 8px;font-size:32px;letter-spacing:-1px}.page-heading p{margin:0;color:var(--muted);font-size:15px}.button{min-height:44px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;border:0;text-decoration:none;cursor:pointer;font-weight:650;transition:.18s}.button:disabled{opacity:.55;cursor:not-allowed}.button.primary{background:linear-gradient(145deg,#2160ff,#114def);color:#fff;box-shadow:0 7px 18px rgba(21,87,255,.2)}.button.primary:hover:not(:disabled){background:var(--blue-dark);transform:translateY(-1px)}.button.secondary{background:#fff;color:var(--blue);border:1px solid #b9caff}.button.full{width:100%;margin-top:18px}
.stats{height:102px;padding:0 26px;display:grid;grid-template-columns:1fr 1px 1fr;align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px}.stats article{display:flex;align-items:center;gap:20px;padding:0 8px}.stats article div{display:flex;align-items:baseline;gap:8px}.stats strong{font-size:23px}.stats article div span{color:#344054}.stats>i{width:1px;height:46px;background:var(--line)}.stat-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:12px;background:var(--blue-soft);color:var(--blue);font-size:25px;font-style:normal}
.toolbar{margin-top:32px;display:flex;align-items:center;justify-content:space-between;gap:20px}.toolbar>span{color:#98a2b3;font-size:13px}.search{width:min(660px,100%);height:52px;padding:0 17px;display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #d0d5dd;border-radius:8px}.search:focus-within{border-color:#8cabff;box-shadow:0 0 0 3px #edf2ff}.search span{font-size:26px;color:#667085;transform:rotate(-18deg)}.search input{width:100%;height:100%;border:0;outline:0;background:transparent;color:var(--text)}
.prototype-list{margin-top:24px}.list-head,.prototype-row{display:grid;grid-template-columns:minmax(250px,1.35fr) minmax(230px,1.1fr) 165px 90px 70px minmax(310px,1.2fr);column-gap:18px;align-items:center}.list-head{padding:0 14px 13px;color:#667085;font-size:13px;font-weight:600}.prototype-row{min-height:100px;margin-bottom:10px;padding:18px 22px;background:#fff;border:1px solid var(--line);border-radius:9px;transition:.18s}.prototype-row:hover{border-color:#c8d2e6;box-shadow:0 8px 25px rgba(16,24,40,.055);transform:translateY(-1px)}.name-cell{display:flex;align-items:center;gap:14px;min-width:0}.name-cell>div,.date-cell{min-width:0;display:flex;flex-direction:column;gap:6px}.name-cell strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}.name-cell small,.date-cell small{color:#667085}.file-badge{position:relative;width:42px;height:48px;flex:0 0 auto;display:flex;align-items:flex-end;justify-content:center;padding-bottom:7px;border-radius:5px;background:linear-gradient(155deg,#1f63ff,#0a46df);color:#fff;font-size:13px;font-weight:780;box-shadow:0 5px 12px rgba(21,87,255,.18)}.file-badge:after{content:"";position:absolute;top:0;right:0;width:12px;height:12px;background:linear-gradient(225deg,#fff 0 49%,#8eb0ff 50%)}.public-link{min-width:0;padding:0;display:flex;align-items:center;gap:8px;border:0;background:none;color:var(--blue);cursor:pointer}.public-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-link i{color:#667085;font-style:normal}.date-cell strong{color:#475467;font-size:13px;font-weight:520}.prototype-row>span{color:#667085;font-size:13px}.actions{display:flex;align-items:center;white-space:nowrap}.actions a,.actions button{padding:3px 11px;border:0;border-right:1px solid var(--line);background:none;color:var(--blue);font-size:13px;font-weight:600;text-decoration:none;cursor:pointer}.actions>:first-child{padding-left:0}.actions>:last-child{border-right:0}.actions .danger{color:var(--danger)}.actions a:hover,.actions button:hover{text-decoration:underline}.loading,.empty{min-height:300px;display:grid;place-items:center;color:var(--muted);background:#fff;border:1px dashed #cfd7e6;border-radius:10px}.empty{display:flex;flex-direction:column;text-align:center}.empty h2{margin:16px 0 6px;font-size:18px}.empty p{margin:0;color:var(--muted);font-size:14px}
.extension-card{margin-top:54px;padding:30px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border:1px solid var(--line);border-radius:12px}.section-copy>span{color:var(--blue);font-size:11px;font-weight:760;letter-spacing:.13em}.section-copy h2{margin:8px 0 6px;font-size:21px}.section-copy p{margin:0;max-width:680px;color:var(--muted);font-size:14px;line-height:1.6}.extension-actions{display:flex;gap:10px;flex:0 0 auto}.help{margin-top:24px;padding:30px;background:#fff;border:1px solid var(--line);border-radius:12px}.help h2{margin:0 0 20px;font-size:19px}.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.help-grid p{margin:0;padding:16px;display:flex;gap:12px;background:#f8fafc;border-radius:8px;color:#475467;font-size:13px;line-height:1.6}.help-grid b{color:#a9bfff;font-size:18px}
.modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:rgba(16,24,40,.43);backdrop-filter:blur(3px)}.modal{position:relative;width:min(520px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:28px;background:#fff;border-radius:14px;box-shadow:0 24px 70px rgba(16,24,40,.22);animation:modal-in .2s ease-out}@keyframes modal-in{from{opacity:0;transform:translateY(10px) scale(.985)}}.close{position:absolute;right:18px;top:16px;width:34px;height:34px;border:0;border-radius:8px;background:#fff;color:#667085;font-size:25px;cursor:pointer}.close:hover{background:#f2f4f7}.modal-heading{padding-right:38px;display:flex;align-items:center;gap:15px}.modal-heading h2{margin:0 0 5px;font-size:20px}.modal-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.field{margin-top:24px;display:flex;flex-direction:column;gap:8px;color:#344054;font-size:13px;font-weight:620}.field input{height:46px;padding:0 13px;border:1px solid #d0d5dd;border-radius:8px;outline:0}.field input:focus{border-color:#8cabff;box-shadow:0 0 0 3px #edf2ff}.progress{margin-top:20px}.progress>div{display:flex;justify-content:space-between;color:#475467;font-size:12px}.progress strong{color:var(--blue)}.progress>i{height:7px;margin-top:8px;display:block;overflow:hidden;background:#e8edfa;border-radius:99px}.progress>i span{display:block;width:0;height:100%;background:linear-gradient(90deg,#2f6cff,#0f4bea);transition:width .2s}.modal-actions{margin-top:26px;display:flex;justify-content:flex-end;gap:10px}.key-badge{width:50px;height:50px;display:grid;place-items:center;border-radius:12px;background:var(--blue-soft);color:var(--blue);font-size:28px}.secret-box{margin-top:18px;padding:14px;background:#fff9e8;border:1px solid #f6d98c;border-radius:9px}.secret-box label{color:#7a5810;font-size:12px;font-weight:700}.secret-box>div{margin:8px 0;display:flex;gap:8px}.secret-box code{min-width:0;flex:1;padding:10px;overflow:auto;background:#fff;border-radius:6px;color:#344054;white-space:nowrap}.secret-box button{border:0;border-radius:6px;background:#fff;color:var(--blue);cursor:pointer}.secret-box small{color:#7a5810}.token-list{margin-top:24px}.token-list h3{font-size:14px}.token-row{padding:12px 0;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line)}.token-row>div{display:flex;flex-direction:column;gap:4px}.token-row small,.muted{color:var(--muted)}.token-row button{border:0;background:none;color:var(--danger);cursor:pointer}
.toast{position:fixed;left:50%;bottom:34px;z-index:200;transform:translateX(-50%);padding:12px 18px;background:#101828;color:#fff;border-radius:8px;box-shadow:var(--shadow);font-size:13px}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,#eef4ff,transparent 38%),#f8fafc}.login-card{width:min(430px,100%);padding:38px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 55px rgba(16,24,40,.09)}.login-logo{margin:auto}.login-card h1{margin:20px 0 8px;text-align:center;font-size:24px}.login-card>p{margin:0 0 26px;text-align:center;color:var(--muted);font-size:13px;line-height:1.6}.login-card .field{margin-top:16px}.login-card>small{display:block;margin-top:18px;text-align:center;color:#98a2b3;font-size:11px}.form-error{margin-top:14px;padding:10px 12px;background:#fff1f1;border:1px solid #ffd0d0;border-radius:8px;color:#a1262c;font-size:12px}
@media(max-width:1180px){.page{width:min(100% - 48px,1120px)}.list-head{display:none}.prototype-row{grid-template-columns:minmax(260px,1.5fr) minmax(210px,1fr) 150px;grid-template-areas:"name link date" "name actions actions";row-gap:14px}.name-cell{grid-area:name}.public-link{grid-area:link}.date-cell{grid-area:date}.prototype-row>span{display:none}.actions{grid-area:actions}}
@media(max-width:760px){.topbar{height:auto;min-height:60px;padding:0 18px;gap:18px;flex-wrap:wrap}.brand{font-size:18px}.topbar nav{order:3;width:calc(100% + 36px);height:48px;margin:0 -18px;overflow-x:auto;border-top:1px solid #f2f4f7}.topbar nav a{min-width:112px;padding:0 14px;font-size:13px}.page{width:calc(100% - 32px);padding-top:28px}.page-heading{align-items:flex-start}.page-heading h1{font-size:26px}.page-heading p{font-size:13px;line-height:1.5}.page-heading .button{padding:0 12px;font-size:13px}.stats{height:auto;padding:18px;grid-template-columns:1fr;gap:16px}.stats>i{width:100%;height:1px}.toolbar>span{display:none}.prototype-row{padding:16px;grid-template-columns:1fr;grid-template-areas:"name" "link" "date" "actions"}.date-cell{flex-direction:row}.actions{overflow-x:auto}.extension-card{align-items:flex-start;flex-direction:column}.extension-actions{width:100%}.extension-actions .button{flex:1}.help-grid{grid-template-columns:1fr}}
