.page{flex-direction:column;min-height:100vh;display:flex}.sheet-head{padding:14px var(--gutter);border-bottom:1px solid var(--line);background:var(--paper);align-items:center;gap:20px;display:flex}.wordmark{font:650 19px var(--display);letter-spacing:-.02em;align-items:center;gap:10px;margin-right:auto;text-decoration:none;display:inline-flex}.wordmark .mark{width:22px;height:22px}.who{text-transform:none;letter-spacing:.02em}h1{font:650 clamp(40px, 6vw, 72px)/1 var(--display);letter-spacing:-.03em;text-wrap:balance;margin:0}.rule{background:var(--red);width:min(320px,70%);height:2px;margin:28px 0 20px}.lead{font:600 clamp(20px, 2vw, 26px)/1.25 var(--display);letter-spacing:-.01em;margin:0}.hint{color:var(--muted);margin:6px 0 0;font-size:17px}.error{color:var(--red);font:500 13px/1.5 var(--mono);min-height:1.5em;margin:12px 0 0}.error:empty{min-height:0;margin:0}.login{padding:clamp(40px, 8vh, 96px) var(--gutter);flex:1;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,6vw,96px);display:grid}.login-copy .lead{max-width:28ch;color:var(--ink-2);margin-bottom:32px;font-weight:500}.drawing{margin:0;padding:24px 24px 16px}.drawing svg{width:100%;height:auto;display:block}.drawing figcaption{text-align:right;margin-top:10px}.frame .axis path{stroke:var(--red);stroke-width:1px;stroke-dasharray:14 4 2 4;fill:none;opacity:.75}.frame .far path,.frame .purlins path{stroke:var(--line);stroke-width:1px;fill:none}.frame .purlins path{stroke:#b9bcc1}.frame .steel path{stroke:var(--ink);stroke-width:1.5px;fill:none}.frame .steel .brace{stroke-width:1px}.frame .bubbles circle{fill:var(--paper);stroke:var(--ink);stroke-width:1.2px}.frame .bubbles text,.frame .dim text{font:500 12px var(--mono);text-anchor:middle;fill:var(--ink)}.frame .dim path{stroke:var(--ink);stroke-width:1px;fill:none}.frame .target circle,.frame .target path{stroke:var(--red);stroke-width:1.5px;fill:none}.facts{background:var(--ink);color:var(--paper);grid-template-columns:repeat(4,1fr);margin:0;display:grid}.facts>div{border-left:1px solid #2a2d31;align-items:baseline;gap:14px;padding:26px 20px 22px;display:flex;position:relative}.facts>div:first-child{padding-left:var(--gutter);border-left:0}.facts .ref{color:#8b9097;font-size:10px;position:absolute;top:8px;right:10px}.facts dt{color:#8b9097;flex:none}.facts dd{font:400 15px/1.4 var(--sans);margin:0}.models{width:100%;padding:clamp(32px, 6vh, 64px) var(--gutter) 80px}.content{min-width:0}.new-project input,.rename input,.invite input,.label-field{border:0;border-bottom:1.5px solid var(--ink);width:100%;color:var(--ink);font:500 15px var(--sans);background:0 0;outline:none;padding:6px 0}.new-project input:focus,.rename input:focus,.invite input:focus,.label-field:focus{border-bottom-color:var(--red)}.btn.line.quiet{border-color:#0000}.btn.line.quiet:hover{border-color:var(--ink);background:var(--paper);color:var(--ink)}.btn.line.danger{border-color:var(--red);color:var(--red)}.btn.line.danger:hover{background:var(--red);color:var(--paper)}.scope-head h1{overflow-wrap:anywhere}.rename{align-items:center;gap:10px;display:flex}.rename[hidden],.confirm[hidden],.project-tools[hidden]{display:none}.rename input{font:650 clamp(32px, 4.5vw, 56px)/1.1 var(--display);letter-spacing:-.03em}.project-tools{gap:8px;margin-top:14px;display:flex}.confirm{margin-top:14px}.confirm .detail{color:var(--ink-2);margin:0 0 10px}.finder{align-items:center;gap:16px;margin-bottom:14px;display:flex}.search{border:1px solid var(--ink);background:var(--paper);flex:1;align-items:center;gap:10px;max-width:420px;padding:0 12px;display:flex}.search svg{color:var(--muted)}.search:focus-within{outline:1.5px solid var(--red);outline-offset:2px}.search:focus-within svg{color:var(--red)}.search input{min-width:0;height:40px;color:var(--ink);font:400 15px var(--sans);background:0 0;border:0;outline:none;flex:1}.search input::placeholder{color:var(--muted)}.search input::-webkit-search-cancel-button{filter:grayscale()}.matches{white-space:nowrap}.schedule .name .in{text-transform:none;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;display:block;overflow:hidden}.top{grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr);align-items:end;gap:clamp(24px,5vw,72px);margin-bottom:40px;display:grid}.drop{cursor:pointer;flex-direction:column;gap:10px;min-height:190px;padding:26px 28px 22px;transition:background-color .16s cubic-bezier(.16,1,.3,1);display:flex}.drop.registered{background:var(--ink);color:var(--paper)}.drop-icon{color:var(--red)}.drop .note{color:#b4b8be}.drop strong{font:600 clamp(22px, 2.2vw, 28px)/1.1 var(--display);letter-spacing:-.015em}.drop-foot{justify-content:space-between;align-items:center;gap:16px;margin-top:auto;display:flex}.drop-foot svg{color:var(--red);transition:transform .22s cubic-bezier(.16,1,.3,1)}.drop.registered:hover,.drop.registered.over{background:#1d1f23}.drop:hover .drop-foot svg{transform:translate(4px)}.drop:focus-within{outline:1.5px solid var(--red);outline-offset:3px}.sheet-table{border:1px solid var(--ink);background:var(--paper)}.schedule{border-collapse:collapse;table-layout:fixed;width:100%}.schedule .c-pick{width:44px}.schedule .c-no{width:52px}.schedule .c-size{width:96px}.schedule .c-date{width:128px}.schedule .c-status{width:24%}.schedule .c-act{width:132px}.schedule th{text-align:left;border-bottom:1px solid var(--ink);padding:10px 16px;font-weight:500}.schedule td{border-bottom:1px solid var(--line);vertical-align:middle;padding:16px}.schedule tr:last-child td{border-bottom:0}.schedule .no{color:var(--red);position:relative}.schedule .name span{text-overflow:ellipsis;white-space:nowrap;font:600 17px var(--display);letter-spacing:-.01em;display:block;overflow:hidden}.schedule .size,.schedule .date{white-space:nowrap;color:var(--ink-2)}.schedule .act{white-space:nowrap;text-align:right}.schedule .act>*+*{margin-left:10px}.schedule td.empty{text-align:center;color:var(--muted);font:500 13px var(--mono);padding:56px 16px}.schedule tr.ready{cursor:pointer}.schedule tr.ready:hover td{background:var(--sheet)}.schedule tr:focus-visible{outline:1.5px solid var(--red);outline-offset:-2px}.schedule tr.changed .no:before{content:"";background:var(--red);clip-path:polygon(50% 0,100% 100%,0 100%);width:9px;height:8px;margin-top:-4px;position:absolute;top:50%;left:4px}.stamp{border:1px solid var(--ink);font:500 11px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;padding:3px 8px;display:inline-block}.stamp.live{background:var(--ink);color:var(--paper)}.stamp.bad{border-color:var(--red);color:var(--red)}.status .detail{color:var(--muted);margin-top:6px;font-size:12px;display:block}.dim{border-left:1px solid var(--ink);border-right:1px solid var(--ink);width:min(240px,100%);height:12px;margin-top:8px;display:block;position:relative}.dim:before{content:"";background:var(--line);height:1px;position:absolute;top:5px;left:0;right:0}.dim i{background:var(--red);height:3px;position:absolute;top:4px;left:0}.status details{margin-top:6px}.status summary{cursor:pointer;color:var(--ink);width:fit-content}.status pre{white-space:pre-wrap;max-width:520px;font:12px/1.5 var(--mono);color:var(--ink-2);margin:6px 0 0}.open{width:36px;height:32px;color:var(--red);cursor:pointer;vertical-align:middle;background:0 0;border:0;place-items:center;display:inline-grid}.open svg{transition:transform .22s cubic-bezier(.16,1,.3,1)}tr:hover .open svg,.open:hover svg{transform:translate(4px)}@media (width<=1080px){.schedule.history .c-date,.schedule.history th:nth-child(3),.schedule.history td.date{display:none}}@media (width<=860px){.login,.top{grid-template-columns:1fr}.login{align-items:start}.facts{grid-template-columns:1fr 1fr}.facts>div{flex-direction:column;gap:6px}.facts>div:nth-child(3){padding-left:var(--gutter);border-left:0}.facts>div:nth-child(n+3){border-top:1px solid #2a2d31}.schedule,.schedule tbody{display:block}.schedule tr{border-bottom:1px solid var(--line);grid-template-columns:40px auto minmax(0,1fr);grid-template-areas:"pick name name""no size date""no status status""no act act";gap:4px 12px;padding:14px 14px 16px;display:grid}.schedule tr:last-child{border-bottom:0}.schedule td,.schedule .name,.schedule .status,.schedule .no,.schedule .pick{border:0;width:auto;max-width:none;padding:0;display:block}.schedule .no{grid-area:no}.schedule .pick{grid-area:pick}.schedule thead{display:none}.schedule .name{grid-area:name}.schedule .size{grid-area:size}.schedule .date{grid-area:date}.schedule .date:before{content:"· "}.schedule .status{grid-area:status;margin-top:6px}.schedule .act{text-align:left;grid-area:act;justify-content:space-between;align-items:center;margin-top:10px;display:flex}.schedule .date{display:block!important}.schedule td.empty{padding:40px 0}.schedule tr.picked{background:var(--sheet)}.schedule tr.picked td{background:0 0}}@media (width<=600px){.who{display:none}.facts>div{padding:18px var(--gutter)}}.duplicates{gap:10px;margin-bottom:18px;display:grid}.duplicates[hidden]{display:none}.dup{border:1px solid var(--ink);background:var(--paper);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px 18px;display:grid}.dup .rev{background:var(--red);clip-path:polygon(50% 0,100% 100%,0 100%);align-self:start;width:14px;height:12px;margin-top:5px}.dup-text p{margin:0}.dup-text strong{overflow-wrap:anywhere;font-weight:600}.dup-text .detail{color:var(--muted);margin-top:4px;font-size:14px}.dup-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.dup-actions .btn:not(.line){min-height:32px;padding:0 14px;font-size:14px}@media (width<=860px){.dup{grid-template-columns:auto minmax(0,1fr)}.dup-actions{grid-column:2;justify-content:flex-start}}.schedule .pick{padding-right:0}.schedule th.pick{padding:10px 0 10px 16px}.schedule input[type=checkbox]{appearance:none;border:1.5px solid var(--ink);background:var(--paper) center / 12px 12px no-repeat;cursor:pointer;border-radius:0;width:16px;height:16px;margin:0;display:block}.schedule input[type=checkbox]:checked{background-color:var(--ink);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2 6.5l2.5 2.5L10 3' fill='none' stroke='white' stroke-width='1.6'/%3E%3C/svg%3E")}.schedule input[type=checkbox]:indeterminate{background-color:var(--ink);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6h7' stroke='white' stroke-width='1.6'/%3E%3C/svg%3E")}.schedule input[type=checkbox]:disabled{opacity:.35;cursor:default}.schedule tr.picked td{background:var(--sheet)}.batch{z-index:2;border:1px solid var(--ink);background:var(--paper);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:-1px;padding:10px 14px;display:flex;position:sticky;top:0}.batch[hidden]{display:none}.batch .rev{background:var(--red);clip-path:polygon(50% 0,100% 100%,0 100%);width:12px;height:10px}.batch-count{font:600 15px var(--display);margin-right:8px}.batch-tools,.batch-confirm{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.batch-tools[hidden],.batch-confirm[hidden]{display:none}.batch-question{color:var(--ink-2);margin-right:4px}.batch-clear{margin-left:auto}.sheet-head .finder{flex:1;max-width:420px;margin:0 auto 0 12px;position:relative}.sheet-head .search{max-width:none}.sheet-head .search input{height:36px}.org-link{font:600 15px var(--display);white-space:nowrap;text-decoration:none}.org-link:hover{text-decoration:underline}.search-results{z-index:10;border:1px solid var(--ink);background:var(--paper);max-height:60vh;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto}.search-results[hidden]{display:none}.search-results .group{margin:0;padding:10px 14px 4px}.search-results .empty{margin:0;padding:14px}.search-results .result{align-items:baseline;gap:10px;padding:8px 14px;text-decoration:none;display:flex}.search-results .result span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.search-results .result small{text-transform:none;letter-spacing:.02em}.search-results .result:hover,.search-results .result:focus-visible{background:var(--sheet)}.crumbs{flex-wrap:wrap;gap:0 2px;margin:0 0 18px;display:flex}.crumbs a{color:var(--ink);text-decoration:none}.crumbs a:hover{text-decoration:underline}.top-actions{align-self:end;justify-items:end;gap:12px;display:grid}.organization .top-actions{justify-items:stretch}.new-project,.invite{align-items:end;gap:8px;width:100%;max-width:420px;display:flex}.new-project .btn,.invite .btn{white-space:nowrap;flex:none}.new-project[hidden]{display:none}.more{margin-top:14px}.section-head{margin:40px 0 10px}.schedule.projects .c-no{width:52px}.schedule.projects .c-count{width:96px}.schedule.projects .c-date{width:140px}.schedule.projects .name a{color:inherit;text-decoration:none}.schedule.history .c-rev{width:22%}.schedule.history .c-date{width:128px}.schedule.history .c-size{width:96px}.schedule.history .c-status{width:24%}.schedule.history .c-act{width:300px}.schedule.history .rev-label{font:600 17px var(--display)}.schedule.history .file{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.schedule.history small{text-transform:none;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;display:block;overflow:hidden}.schedule.history tr.current{background:var(--sheet)}.schedule.history .current-mark{color:var(--red);text-transform:uppercase;letter-spacing:.08em}.schedule.people .c-role{width:160px}.schedule.people .c-date{width:140px}.schedule.people .c-act,.schedule .c-act{width:300px}.schedule .act .btn.line{text-decoration:none}.schedule .act .batch-confirm{justify-content:flex-end}.schedule .next-rev{margin-bottom:4px;display:block}.rename.small input{font:600 17px var(--display)}.new-revision{gap:10px;display:grid}.label-caption{align-items:end;gap:10px;display:flex}.label-field{width:140px;font:600 17px var(--display)}.no-access{grid-template-columns:minmax(0,1fr)}@media (width<=860px){.top-actions{justify-items:start}.schedule.projects tr{grid-template-columns:40px minmax(0,1fr);grid-template-areas:"no name""no count""no date"}.schedule.projects .count{grid-area:count}.schedule.projects .count:after{content:" models"}.schedule.history tr,.schedule.people tr{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"name name""file file""size date""status status""act act"}.schedule.history .file-cell{grid-area:file}.schedule.people .role{grid-area:size}.schedule.history .date:before,.schedule.people .date:before{content:""}.schedule.history .act,.schedule.people .act{flex-wrap:wrap;justify-content:flex-start;gap:8px}.schedule .act>*+*{margin-left:0}.sheet-head{flex-wrap:wrap}.sheet-head .finder{flex-basis:100%;order:5;max-width:none;margin:0}.schedule .c-act,.schedule.history .c-act{width:auto}}
