:root{--bg:#f7f7f8;--surface:#fff;--ink:#18181b;--muted:#71717a;--line:#e7e7ea;--soft:#f3f4f6;--blue:#2563eb;--blue-soft:#eff6ff;--red:#dc2626;--green:#18845a;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,sans-serif;color:var(--ink);background:var(--bg);font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}.logo{display:flex;align-items:center;gap:10px;color:#27272a}.logo img{width:91px;height:22px;object-fit:contain}.logo i{height:18px;border-left:1px solid #d4d4d8}.logo b{font-size:14px}.auth{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 80% 0,#edf4ff,transparent 32%),var(--bg)}.auth-card{width:min(420px,calc(100% - 32px));padding:40px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 20px 60px #18181b0d}.auth .logo{font-weight:700}.eyebrow{margin:27px 0 8px;color:#8a8a92;font-size:10px;font-weight:750;letter-spacing:.14em}.auth h1,.hero h1,.modal h2{margin:0;letter-spacing:-.035em}.auth h1{font-size:32px}.muted{color:var(--muted);line-height:1.6}label{display:block;margin-top:14px;color:#3f3f46;font-size:12px;font-weight:650}input,select{display:block;width:100%;margin-top:6px;padding:10px 11px;border:1px solid #d8d8dd;border-radius:8px;background:#fff;color:var(--ink);outline:none}input:focus,select:focus{border-color:#93b4f5;box-shadow:0 0 0 3px #dbeafe}.primary{padding:9px 14px;border:0;border-radius:8px;background:var(--ink);color:#fff;font-weight:650}.primary:hover{background:#303036}.auth .primary,.modal .primary{width:100%;margin-top:20px}.link{border:0;background:transparent;color:#52525b;padding:7px;font-weight:550}.link:hover{color:var(--blue)}.quiet{color:#a1a1aa}.error{color:#b91c1c;font-size:12px}.success{color:#15803d;font-size:12px}.shell{display:grid;grid-template-columns:216px minmax(0,1fr);grid-template-rows:56px minmax(0,1fr);min-height:100vh}.shell header{position:sticky;z-index:10;top:0;grid-column:1/3;display:flex;align-items:center;justify-content:space-between;padding:0 22px;background:#ffffffeb;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}nav{display:flex;align-items:center;gap:4px}.avatar{display:grid;place-items:center;width:28px;height:28px;margin-left:4px;border:0;border-radius:50%;background:#e8eef8;color:#315a96;font-weight:700}.shell aside{padding:18px 10px;border-right:1px solid var(--line);background:#fafafa}.sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:0 10px 9px;color:#8b8b93;font-size:11px;font-weight:700}.sidebar-head button,.more{border:0;background:transparent;color:#8b8b93}.sidebar-head button:hover,.more:hover{color:var(--ink)}.folder{display:flex;align-items:center}.folder>button:first-child{display:flex;align-items:center;gap:8px;min-width:0;flex:1;padding:8px 10px;border:0;border-radius:7px;background:transparent;color:#52525b;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.folder>button:first-child span{color:#a1a1aa}.folder .active{background:#ededf0!important;color:#18181b!important;font-weight:650}.more{width:26px;padding:0}.workspace{width:100%;max-width:1500px;margin:0 auto;padding:34px 38px}.hero,.toolbar{display:flex;align-items:center;justify-content:space-between}.hero h1{font-size:28px;font-weight:680}.hero .eyebrow{margin:0 0 5px}.toolbar{margin-top:26px;padding-bottom:10px;color:#8b8b93;font-size:12px}.search{position:relative;width:240px}.search span{position:absolute;left:10px;top:8px;color:#a1a1aa;font-size:17px}.search input{height:34px;margin:0;padding:7px 10px 7px 31px;background:#fff}.list{overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:11px}.table-head,.doc{display:grid;grid-template-columns:minmax(240px,1fr) 58px 78px 135px 326px;align-items:center;gap:12px}.table-head{height:34px;padding:0 14px;background:#fafafa;border-bottom:1px solid var(--line);color:#96969e;font-size:10px;font-weight:700;letter-spacing:.05em}.doc{min-height:54px;padding:7px 14px;border-bottom:1px solid #eeeeef}.doc:hover{background:#fbfcfe}.doc-name{display:flex;align-items:center;min-width:0;gap:10px}.doc-name>span{min-width:0}.doc-name strong,.doc-name small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-name strong{font-size:13px;font-weight:650}.doc-name small{margin-top:2px;color:#a1a1aa;font-size:10px}.file{display:grid;place-items:center;flex:0 0 32px;height:28px;border-radius:6px;background:var(--soft);color:#71717a;font-size:9px;letter-spacing:.03em}.doc code,.history code{font:11px ui-monospace,SFMono-Regular,Menlo,monospace;color:#71717a}.doc em,.history em{color:var(--green);font-size:11px;font-style:normal}.doc em i{display:inline-block;width:5px;height:5px;margin-right:4px;border-radius:50%;background:var(--green)}.doc time,.history time{color:#8b8b93;font-size:11px}.row-actions{display:flex;justify-content:flex-end;gap:2px}.row-actions a,.row-actions button,.history button{padding:5px 7px;border:0;border-radius:5px;background:transparent;color:#52525b;font-size:11px;text-decoration:none;white-space:nowrap}.row-actions a:hover,.row-actions button:hover,.row-actions button.active,.history button:hover{background:#ededf0;color:#18181b}.row-actions .delete:hover{background:#fef2f2;color:var(--red)}.history{padding:8px 14px 12px 46px;background:#fafafa;border-bottom:1px solid var(--line);box-shadow:inset 3px 0 var(--blue)}.history-title{display:flex;gap:8px;margin-bottom:4px;color:#52525b;font-size:11px}.history-title span{color:#a1a1aa}.history-row{display:grid;grid-template-columns:46px minmax(180px,1fr) 170px 135px 80px;align-items:center;min-height:35px;border-top:1px solid #ececef}.history-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.history-row small{color:#8b8b93;font-size:10px}.history-row button{justify-self:end;color:var(--blue)}.empty{text-align:center;padding:72px 20px}.empty h2{margin:0;font-size:18px}.empty p{color:var(--muted)}.overlay{position:fixed;z-index:50;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#18181b66;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal{position:relative;width:min(540px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:30px;background:#fff;border:1px solid #ffffff80;border-radius:16px;box-shadow:0 30px 90px #0003}.close{position:absolute;top:12px;right:12px;width:29px;height:29px;border:0;border-radius:50%;background:#f1f1f3;color:#71717a;font-size:18px}.drop{display:flex;min-height:140px;align-items:center;justify-content:center;flex-direction:column;margin-top:16px;border:1px dashed #c7c7ce;border-radius:9px;background:#fafafa;color:#3f3f46}.drop input{display:none}.drop small{margin-top:6px;color:#8b8b93;font-weight:400}.actions{display:flex;gap:7px;margin:18px 0}.secondary,.danger,.button{padding:8px 11px;border-radius:7px;border:1px solid #dddde1;background:#fff;color:#3f3f46;text-decoration:none}.danger{border:0;background:transparent;color:var(--red)}.block{display:block;width:100%;margin-top:9px}.modal h3{margin:27px 0 7px}.version{display:flex;align-items:center;gap:11px;padding:11px 0;border-top:1px solid #ececef;font-size:12px}.version>span:first-child{flex:1}.version small{display:block;color:#8b8b93}.pending{color:#a16207!important}@media(max-width:1050px){.table-head,.doc{grid-template-columns:minmax(200px,1fr) 50px 70px 280px}.table-head span:nth-child(4),.doc time{display:none}}@media(max-width:760px){.shell{grid-template-columns:1fr;grid-template-rows:54px auto 1fr}.shell header{grid-column:auto;padding:0 14px}.logo img{width:78px}.shell aside{display:flex;overflow:auto;padding:7px;border-right:0;border-bottom:1px solid var(--line)}.sidebar-head{display:none}.folder{white-space:nowrap}.more{display:none}.workspace{padding:22px 12px}.hero h1{font-size:24px}.table-head{display:none}.doc{grid-template-columns:minmax(160px,1fr) 40px;gap:8px}.doc em,.doc time{display:none}.row-actions{grid-column:1/3;justify-content:flex-start;padding-left:42px}.history{padding-left:14px}.history-row{grid-template-columns:38px 1fr 55px}.history-row small,.history-row time{display:none}.toolbar{gap:12px}.search{width:100%}}.folder{position:relative;padding-left:calc(var(--depth) * 15px)}.folder:before{content:"";position:absolute;left:calc(17px + (var(--depth) - 1) * 15px);top:0;bottom:0;border-left:1px solid #e4e4e7}.folder[style*="--depth: 0"]:before{display:none}.tree-mark{flex:0 0 14px;color:#a1a1aa;font-family:ui-monospace,monospace}.folder-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder .active .tree-mark{color:#2563eb}.table-head,.doc{grid-template-columns:minmax(240px,1fr) 58px 78px 135px 365px}.row-actions{gap:1px}.share-modal{width:min(580px,100%)}.share-url{display:flex;gap:8px;align-items:end}.share-url input{flex:1}.share-url button{height:37px;padding:0 13px;border:1px solid #dddde1;border-radius:7px;background:#fff;white-space:nowrap}.share-actions{display:flex;gap:8px;margin-top:18px}.share-actions .primary{width:auto;margin:0}.share-tip{display:block;margin-top:16px;color:#8b8b93;line-height:1.6}@media(max-width:1100px){.table-head,.doc{grid-template-columns:minmax(200px,1fr) 50px 70px 320px}.table-head span:nth-child(4),.doc time{display:none}}@media(max-width:760px){.folder{padding-left:0}.folder:before{display:none}}.share-actions .primary{display:none}.share-actions .secondary{flex:1;text-align:center}.tree-mark{position:relative;display:inline-block;width:15px;height:11px!important;flex:0 0 15px;border:1.5px solid #a1a1aa;border-radius:2px;font-size:0!important}.tree-mark:before{content:"";position:absolute;left:1px;top:-4px;width:6px;height:4px;border:1.5px solid #a1a1aa;border-bottom:0;border-radius:2px 2px 0 0}.folder .active .tree-mark,.folder .active .tree-mark:before{border-color:#2563eb}.folder .more{font-size:0}.folder .more:after{content:"编辑";font-size:11px;color:#9a9aa2}.folder .more:hover:after{color:#2563eb}.approval-alert{position:fixed;z-index:40;right:22px;bottom:22px;display:flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid #f0dfb6;border-radius:9px;background:#fffaf0;color:#805b13;box-shadow:0 12px 30px #18181b18;font-size:12px;cursor:pointer}.approval-alert button{border:0;background:transparent;color:#2563eb;font-weight:650}.approval-dot{width:7px;height:7px;border-radius:50%;background:#d97706}
