:root{--bg:#f3f5f8;--card:#fff;--text:#1a2230;--muted:#6b7686;--line:#e3e7ee;--brand:#1e3a5f;--brand-2:#2d5a8e;--accent:#f5c76b;--ours:#2d6cdf;--ours-bg:#eef4ff;--theirs:#d97a1c;--theirs-bg:#fff5ea;--note:#7a8494;--note-bg:#f4f5f7;--ok:#1f9d6b;--danger:#d64545;--radius:14px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#0f141b;--card:#19212c;--text:#e6ebf2;--muted:#8d98a8;--line:#2a3442;--brand:#16283f;--ours-bg:#172437;--theirs-bg:#2a2014;--note-bg:#1e252f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font:16px/1.6 -apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}input,select,textarea{font:inherit;color:inherit}.page{max-width:760px;min-height:100vh;margin:0 auto}.content{padding:12px 14px calc(96px + var(--safe-bottom))}.muted{color:var(--muted)}.center{text-align:center;padding:32px 0}.pad{padding:16px}.error{color:var(--danger);margin:8px 0;font-size:14px}.topbar{z-index:10;padding:calc(8px + var(--safe-top)) 8px 8px;background:var(--brand);color:#fff;align-items:center;gap:8px;display:flex;position:sticky;top:0}.topbar-title{text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;font-size:17px;font-weight:600;overflow:hidden}.topbar-btn{color:#fff;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;min-width:44px;height:36px;padding:0 10px;font-size:28px;line-height:36px;display:inline-flex}.topbar-btn.small{background:#ffffff24;font-size:14px}.topbar-btn.danger{background:#d64545d9}.topbar-spacer{width:44px;display:inline-block}.topbar-right{justify-content:flex-end;min-width:44px;display:flex}.list-tools{top:calc(52px + var(--safe-top));z-index:9;background:var(--bg);padding:12px 14px 4px;position:sticky}.search{border:1px solid var(--line);background:var(--card);border-radius:12px;width:100%;height:42px;padding:0 14px}.seg{background:var(--card);border:1px solid var(--line);border-radius:12px;gap:6px;margin-top:10px;padding:4px;display:flex}.seg button{height:34px;color:var(--muted);background:0 0;border:0;border-radius:9px;flex:1;font-size:14px}.seg button.on{background:var(--brand);color:#fff;font-weight:600}.seg.big button{height:40px}.seg.big button.on.ours{background:var(--ours)}.seg.big button.on.theirs{background:var(--theirs)}.seg.big button.on.note{background:var(--note)}.case-card{background:var(--card);border-radius:var(--radius);border:1px solid var(--line);margin-bottom:12px;padding:14px 16px;display:block;box-shadow:0 1px 2px #1018280f}.case-card:active{transform:scale(.99)}.case-card h2{margin:6px 0 2px;font-size:17px;line-height:1.4}.case-card-head{align-items:center;gap:6px;display:flex}.case-card-date{color:var(--muted);margin-left:auto;font-size:12px}.case-card-meta{color:var(--muted);margin:0;font-size:13px}.case-card-latest{-webkit-line-clamp:2;border-radius:10px;-webkit-box-orient:vertical;margin:8px 0 0;padding:8px 10px;font-size:14px;display:-webkit-box;overflow:hidden}.case-card-latest.ours{background:var(--ours-bg)}.case-card-latest.theirs{background:var(--theirs-bg)}.case-card-latest.note{background:var(--note-bg)}.case-card-foot{color:var(--muted);margin:6px 0 0;font-size:12px}.tag{border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600}.tag.active{color:var(--ok);background:#e3f6ee}.tag.closed{background:var(--note-bg);color:var(--note)}.tag.plain{background:var(--ours-bg);color:var(--brand-2)}.panel{background:var(--card);border-radius:var(--radius);border:1px solid var(--line);margin-bottom:14px;padding:16px}.case-title{margin:8px 0 4px;font-size:20px;line-height:1.4}.meta{grid-template-columns:1fr 1fr;gap:8px 14px;margin:12px 0 0;display:grid}.meta div{min-width:0}.meta dt{color:var(--muted);font-size:12px}.meta dd{word-break:break-word;margin:0;font-size:15px}.section-title{margin:0 0 8px;font-size:16px}.sub-title{color:var(--muted);margin:16px 0 8px;font-size:14px;font-weight:600}.prose{white-space:pre-wrap;word-break:break-word;font-size:15.5px;line-height:1.75}.link-btn{color:var(--brand-2);background:0 0;border:0;padding:6px 0;font-size:14px}.att-list{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.att{align-items:center;gap:6px;display:flex}.att-link{border:1px solid var(--line);background:var(--bg);border-radius:12px;flex:1;align-items:center;gap:10px;min-width:0;padding:10px 12px;display:flex}.att-link:active{background:var(--line)}.att-badge{color:#fff;background:#8792a2;border-radius:9px;flex:none;place-items:center;width:40px;height:40px;font-size:11px;font-weight:800;display:grid}.att-badge.pdf{background:#e2453c}.att-badge.img{background:#2f9e74}.att-badge.doc{background:#2b65c7}.att-badge.xls{background:#1f8a4c}.att-badge.media{background:#8a4fd1}.att-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;overflow:hidden}.att-size{color:var(--muted);flex:none;font-size:12px}.att-remove{background:var(--note-bg);width:36px;height:36px;color:var(--danger);border:0;border-radius:10px;flex:none;font-size:20px}.timeline-head{justify-content:space-between;align-items:center;margin:20px 2px 10px;display:flex}.timeline-head .section-title{margin:0}.timeline{border-left:2px solid var(--line);margin:0;padding:0 0 0 14px;list-style:none}.fu{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);border-left:4px solid var(--note);margin:0 0 14px 6px;padding:12px 14px;position:relative}.fu:before{content:"";background:var(--note);border:3px solid var(--bg);border-radius:50%;width:12px;height:12px;position:absolute;top:18px;left:-29px}.fu.ours{border-left-color:var(--ours)}.fu.ours:before{background:var(--ours)}.fu.theirs{border-left-color:var(--theirs);background:var(--theirs-bg)}.fu.theirs:before{background:var(--theirs)}.fu.note{background:var(--note-bg)}.fu-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fu-side{color:#fff;background:var(--note);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:700}.fu-side.ours{background:var(--ours)}.fu-side.theirs{background:var(--theirs)}.fu-actor{font-size:15px;font-weight:600}.fu-channel{color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:0 6px;font-size:12px}.fu-edit{color:var(--muted);margin-left:auto;padding:2px 6px;font-size:16px}.fu-time{color:var(--muted);margin:2px 0 6px;font-size:12px;display:block}.fab{right:max(18px,50vw - 362px);bottom:calc(22px + var(--safe-bottom));background:var(--brand);width:58px;height:58px;color:var(--accent);z-index:20;border:0;border-radius:50%;font-size:30px;line-height:1;position:fixed;box-shadow:0 6px 18px #10182847}.form label,.form .field{color:var(--muted);flex-direction:column;gap:4px;margin-bottom:14px;font-size:13px;display:flex}.field-label{color:var(--muted);font-size:13px}.form input,.form select,.form textarea{border:1px solid var(--line);background:var(--card);width:100%;color:var(--text);border-radius:12px;padding:10px 12px;font-size:16px}.form input,.form select{height:46px}.form textarea{resize:vertical;line-height:1.6}.form .seg{margin:0 0 16px}.row2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.row2 label{min-width:0}.btn{border:1px solid #0000;border-radius:12px;height:46px;padding:0 18px;font-size:16px;font-weight:600}.btn.full{width:100%}.btn.primary{background:var(--brand);color:#fff}.btn.ghost{border:1px dashed var(--brand-2);color:var(--brand-2);background:0 0}.btn:disabled{opacity:.5}.uploader .btn{margin-top:8px}.sticky-submit{bottom:calc(12px + var(--safe-bottom));position:sticky;box-shadow:0 4px 14px #10182833}.login{background:linear-gradient(160deg, var(--brand), #0d1b2d);place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{background:var(--card);text-align:center;border-radius:20px;width:100%;max-width:360px;padding:28px 22px}.login-card h1{margin:8px 0 0;font-size:22px}.login-card p{margin:2px 0 18px}.login-logo{width:64px;height:64px}.login-card label{text-align:left;color:var(--muted);flex-direction:column;gap:4px;margin-bottom:12px;font-size:13px;display:flex}.login-card input{border:1px solid var(--line);background:var(--bg);border-radius:12px;height:46px;padding:0 12px;font-size:16px}.login-card .btn{margin-top:6px}.has-tabbar .content{padding-bottom:calc(150px + var(--safe-bottom))}.has-tabbar .fab{bottom:calc(84px + var(--safe-bottom))}.tabbar{z-index:15;background:var(--card);border-top:1px solid var(--line);padding-bottom:var(--safe-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar a{color:var(--muted);flex-direction:column;flex:1;align-items:center;gap:1px;padding:7px 0 6px;font-size:12px;display:flex}.tabbar a.on{color:var(--brand-2);font-weight:700}.tab-icon{filter:grayscale();opacity:.7;font-size:21px;line-height:1.1}.tabbar a.on .tab-icon{filter:none;opacity:1}@media (width>=760px){.tabbar{width:760px;left:50%;transform:translate(-50%)}}.topbar-actions{gap:6px;display:flex}.small{font-size:12px}.pad-x{padding:0 4px}.grow{flex:1;min-width:0}.grow p{margin:0}.ok-text{color:var(--ok);margin:8px 0;font-size:14px}.tag.danger{color:var(--danger);background:#fde8e8}.lang-toggle{color:#fff;background:0 0;border:1px solid #fff6;border-radius:999px;padding:4px 12px;font-size:13px}.login{position:relative}.login-lang{top:calc(14px + var(--safe-top));position:absolute;right:14px}.seg.big button.on.c-ours{background:var(--ours)}.seg.big button.on.c-theirs{background:var(--theirs)}.seg.big button.on.c-note,.seg.big button.on.c-internal{background:var(--note)}.tag.cs-requested{color:#6b46c1;background:#f1ebff}.tag.cs-drafting{background:var(--ours-bg);color:var(--ours)}.tag.cs-negotiating{background:var(--theirs-bg);color:var(--theirs)}.tag.cs-signed{color:var(--ok);background:#e3f6ee}.tag.cs-cancelled{background:var(--note-bg);color:var(--note)}.ver-line{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.ver-badge{color:var(--brand-2);background:var(--ours-bg);border-radius:8px;padding:2px 10px;font-size:13px;font-weight:700}.ver-badge.empty{color:var(--muted);background:var(--note-bg);font-weight:500}.case-card-latest.request{background:#f6f2ff}.current-box{background:var(--ours-bg);border:1px solid var(--line);border-radius:12px;margin-top:14px;padding:12px}.current-head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.current-head b{color:var(--brand-2);font-size:17px}.current-box .att-link{background:var(--card)}.ver-no{text-align:center;color:#fff;background:var(--brand-2);border-radius:8px;min-width:38px;padding:1px 8px;font-size:15px;font-weight:800;display:inline-block}.fu.version{border-left-color:var(--brand-2)}.fu.version:before{background:var(--brand-2)}.fu.version.current{box-shadow:0 0 0 2px var(--brand-2) inset}.fu.request{background:#f6f2ff;border-left-color:#7c5cd6}.fu.request:before,.fu-side.request{background:#7c5cd6}.fu.fb-theirs{border-left-color:var(--theirs);background:var(--theirs-bg)}.fu.fb-theirs:before{background:var(--theirs)}.fu.fb-ours{border-left-color:var(--ours)}.fu.fb-ours:before{background:var(--ours)}.fu.fb-internal{background:var(--note-bg)}.fu-side.fb-theirs{background:var(--theirs)}.fu-side.fb-ours{background:var(--ours)}.ver-preview{align-items:center;gap:10px;margin:0 0 14px;display:flex}.ver-preview .ver-no{padding:4px 12px;font-size:20px}.fab{transition:transform .15s}.fab.open{transform:rotate(45deg)}.fab-menu{z-index:19;padding:0 max(18px, calc(50vw - 380px + 18px)) calc(96px + var(--safe-bottom));background:#0a142359;flex-direction:column;justify-content:flex-end;align-items:flex-end;gap:10px;display:flex;position:fixed;inset:0}.fab-menu button{background:var(--card);color:var(--text);border:0;border-radius:999px;padding:12px 18px;font-size:15px;font-weight:600;box-shadow:0 4px 14px #10182833}.form .check{color:var(--text);flex-direction:row;align-items:center;gap:8px;font-size:15px}.form .check input{width:20px;height:20px}.form .field-label+.seg{margin-top:4px}.profile{align-items:center;gap:12px;display:flex}.profile p{margin:0}.avatar{background:var(--brand);width:48px;height:48px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:20px;font-weight:800;display:grid}.avatar.small{width:38px;height:38px;font-size:16px}.row-link{align-items:center;gap:10px;display:flex}.user-row{margin-bottom:10px;padding:12px 14px}.inactive{opacity:.5}.btn.danger-outline{border:1px solid var(--danger);color:var(--danger);background:0 0}.access-row{border-bottom:1px solid var(--line);flex-direction:column;gap:6px;padding:10px 0;display:flex}.access-row:last-child{border-bottom:0}.access-title{text-overflow:ellipsis;min-width:0;font-size:15px;overflow:hidden}.lv-seg{gap:4px;display:flex}.lv-seg button{border:1px solid var(--line);background:var(--bg);height:34px;color:var(--muted);border-radius:9px;flex:1;font-size:13px}.lv-seg button.on.lv-none{background:var(--note);color:#fff;border-color:#0000}.lv-seg button.on.lv-view{background:var(--ours);color:#fff;border-color:#0000}.lv-seg button.on.lv-edit{background:var(--ok);color:#fff;border-color:#0000}
