.lib{--lib-pad:clamp(32px, 5vw, 80px);max-width:1440px;padding:40px var(--lib-pad) 96px;margin:0 auto}.lib-head{flex-wrap:wrap;align-items:baseline;gap:20px;margin-bottom:8px;display:flex}.lib-head h1{font-family:var(--serif);letter-spacing:-.02em;margin:0;font-size:clamp(36px,3.6vw,52px);font-weight:400;line-height:1.05}.lib-head .sub{color:var(--ds-ink-secondary);font-size:15px}.lib-head .units{margin-left:auto}.lib-bar{z-index:20;margin:16px calc(-1 * var(--lib-pad)) 12px;padding:0 var(--lib-pad);background:var(--ds-canvas);border-bottom:1px solid var(--ds-line);flex-wrap:wrap-reverse;align-items:center;column-gap:16px;display:flex;position:sticky;top:0}.lib-tabrow{flex:auto;align-self:stretch;align-items:center;column-gap:16px;min-width:0;display:flex}.lib-tabs{scrollbar-width:none;align-self:stretch;align-items:flex-end;gap:4px;min-width:0;margin-bottom:-1px;display:flex;overflow-x:auto}.lib-src{flex:none;gap:2px;margin-left:auto;display:flex}.lib-src button{border-radius:var(--ds-radius-pill);color:var(--ds-ink-secondary);white-space:nowrap;background:0 0;border:0;min-height:32px;padding:5px 12px;font-size:13px;font-weight:500}.lib-src button:hover:not(:disabled){color:var(--ds-ink)}.lib-src button[aria-selected=true]{background:color-mix(in srgb, var(--ds-ink) 13%, transparent);color:var(--ds-ink)}.lib-src button:disabled{color:var(--ds-ink-tertiary);cursor:default}.lib-src .n{font-variant-numeric:tabular-nums}.lib-bar .search{border:1px solid var(--ds-line-strong);border-radius:var(--ds-radius-sm);background:var(--ds-surface-raised);flex:200px;width:auto;min-width:200px;max-width:420px;min-height:44px;margin:8px 0 8px auto;padding:10px 14px;font-size:14px}.lib-bar .search::placeholder{color:var(--ds-ink-tertiary)}.lib-tabs button,.lib-tabs a{color:var(--ds-ink-secondary);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:10px 14px;font-size:15px;font-weight:500;line-height:normal;text-decoration:none;display:inline-block}.lib-tabs button:hover,.lib-tabs a:hover{color:var(--ds-ink)}.lib-tabs button[aria-selected=true],.lib-tabs a[aria-selected=true]{color:var(--ds-accent);border-bottom-color:var(--ds-accent);font-weight:600}.lib-filters{color:var(--ds-ink-secondary);flex-wrap:wrap;align-items:center;gap:8px 24px;margin:8px 0 24px;font-size:13px;display:flex}.lib-filters .f{align-items:center;gap:8px;display:flex}.lib-filters .f .lbl{color:var(--ds-ink-tertiary);font-size:12px;font-weight:600}.lib-filters .seg{background:0 0;border-color:#0000;gap:2px;padding:0}.lib-filters .seg.small button{color:var(--ds-ink-secondary);padding:5px 11px;font-size:13px}.lib-filters .seg.small button:hover{background:var(--ds-surface);color:var(--ds-ink)}.lib-filters .seg.small button[aria-pressed=true]{background:var(--ds-ink);color:var(--ds-on-ink)}.lib-count{color:var(--ds-ink-tertiary);font-variant-numeric:tabular-nums;margin-left:auto;font-size:13px}.lib-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px;display:grid}.lib-card{border-radius:var(--ds-radius-md);background:var(--ds-surface-raised);color:var(--ds-ink);border:0;flex-direction:column;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.lib-card:hover{box-shadow:var(--ds-shadow-md);transform:translateY(-2px)}.lib-card .pic{aspect-ratio:4/3;background:radial-gradient(120% 90% at 50% 100%, var(--ds-water-soft) 0%, var(--ds-canvas) 75%);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.lib-card .pic svg:not(.ic){align-self:stretch;width:100%;height:100%;display:block}.lib-card .pic img{width:auto;min-width:0;max-width:100%;height:auto;min-height:0;max-height:100%;display:block}.lib-card .pic svg:not(.ic){padding:8px 12px 2px}.lib-card .pic .tag{background:color-mix(in srgb, var(--ds-surface-raised) 92%, transparent);border-radius:var(--ds-radius-pill);color:var(--ds-ink-secondary);padding:3px 10px;font-size:12px;font-weight:600;position:absolute;top:12px;left:12px}.lib-card .pic .tag.mine{color:var(--ds-moss);background:var(--ds-moss-soft)}.lib-card .pic .shapes{background:color-mix(in srgb, var(--ds-surface-raised) 92%, transparent);border-radius:var(--ds-radius-pill);color:var(--ds-ink-secondary);align-items:center;gap:5px;padding:3px 10px 3px 8px;font-size:12px;font-weight:600;display:inline-flex;position:absolute;bottom:12px;left:12px}.lib-card .pic .shapes .ic{width:14px;height:14px}.lib-card .fav{background:color-mix(in srgb, var(--ds-surface-raised) 92%, transparent);border-radius:50%;place-items:center;width:34px;height:34px;font-size:18px;display:grid;position:absolute;top:10px;right:10px}.lib-card .body{gap:4px;padding:14px 18px 18px;display:grid}.lib-card .nm{font-family:var(--serif);letter-spacing:-.01em;font-size:20px;font-weight:500;line-height:1.2}.lib-card .sci{font-family:var(--serif);color:var(--ds-ink-tertiary);font-size:14px;font-style:italic}.lib-card .reqs{color:var(--ds-ink-secondary);flex-wrap:wrap;gap:6px 12px;margin-top:8px;font-size:13px;display:flex}.lib-card .req{color:var(--ds-ink-secondary);white-space:nowrap;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:13px;display:inline-flex}.lib-card .req.hi{color:var(--ds-warning)}.lib-card .req.need{color:var(--ds-danger)}.lib-card .zones{color:var(--ds-ink-tertiary);margin-top:4px;font-size:13px}.lib-card.plain{cursor:default}.lib-card.plain:hover{box-shadow:none;transform:none}.fav{color:var(--ds-ink-secondary);cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:16px;line-height:1}.lib-card .fav .ic{width:20px;height:20px}.fav[aria-pressed=true]{color:var(--ds-accent)}.fav:hover{color:var(--ds-danger)}.lib-empty{color:var(--ds-ink-secondary);justify-items:start;gap:12px;padding:40px 0;font-size:15px;display:grid}.lib-empty .empty-mark{color:color-mix(in srgb, var(--ds-ink-tertiary) 70%, var(--ds-canvas));display:block}.lib-foot{color:var(--ds-ink-tertiary);margin-top:28px;font-size:13px}.det{grid-template-columns:1fr 1.1fr;align-items:start;gap:40px;display:grid}.det .det-hero{border-radius:var(--ds-radius-lg);background:radial-gradient(120% 90% at 50% 100%, var(--ds-water-soft) 0%, var(--ds-canvas) 75%);aspect-ratio:4/3;border:0;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.det .det-hero svg{align-self:stretch;width:100%;height:100%;display:block}.det .det-hero img{width:auto;min-width:0;max-width:100%;height:auto;min-height:0;max-height:100%;display:block}.det .det-hero svg{padding:20px 28px 8px}.det .det-hero .cap{color:var(--ds-ink-tertiary);font-size:12px;position:absolute;bottom:10px;right:12px}.det h1{font-family:var(--serif);letter-spacing:-.02em;margin:0;font-size:clamp(30px,3vw,40px);font-weight:400;line-height:1.05}.det .sci{font-family:var(--serif);color:var(--ds-ink-secondary);margin-top:4px;font-size:17px;font-style:italic}.det .tags{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.det .tags .req{color:var(--ds-ink-secondary);border:1px solid var(--ds-line);border-radius:var(--ds-radius-pill);background:var(--ds-surface-raised);align-items:center;gap:5px;padding:5px 12px;font-size:13px;display:inline-flex}.det .tags .req.hi{color:var(--ds-warning);border-color:color-mix(in srgb, var(--ds-warning) 40%, var(--ds-line))}.det .tags .req.need{color:var(--ds-danger);border-color:color-mix(in srgb, var(--ds-danger) 40%, var(--ds-line))}.det table{border-collapse:collapse;width:100%;margin-top:6px;font-size:14px}.det td,.det th{text-align:left;border-top:1px solid var(--ds-line);vertical-align:top;padding:9px 8px;font-weight:400}.det th{color:var(--ds-ink-secondary);white-space:nowrap;width:120px;font-size:13px}.det h3{letter-spacing:.14em;text-transform:uppercase;color:var(--ds-ink-secondary);margin:24px 0 6px;font-size:11px;font-weight:700}.det .ev{color:var(--ds-ink-secondary);word-break:break-all;font-size:13px}.det .ev a{color:var(--ds-moss)}.det .mine-box{border-radius:var(--ds-radius-md);background:var(--ds-surface);border:0;margin-top:20px;padding:18px 20px}.det .mine-box select{border:1px solid var(--ds-line-strong);border-radius:var(--ds-radius-sm);background:var(--ds-surface-raised);width:100%;min-height:40px;margin-top:10px;padding:8px 10px}.det .verdict{align-items:flex-start;gap:8px;margin-top:12px;line-height:1.5;display:flex}.lib-mine{color:var(--ds-moss);background:var(--ds-moss-soft);border-radius:var(--ds-radius-pill);margin-left:8px;padding:2px 8px;font-size:12px;font-weight:600}@media (max-width:820px){.det{grid-template-columns:1fr}}.lib-sheet-scrim{align-items:start;padding:5vh 16px;overflow:auto}.lib-sheet{border-radius:var(--ds-radius-lg);background:var(--ds-surface-raised);width:min(1080px,96vw);max-height:none;padding:0}.lib-sheet-body{padding:20px 32px 36px}.lib-sheet-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.lib-sheet-head .iconbtn{background:var(--ds-surface);width:36px;height:36px;color:var(--ds-ink-secondary);border:0;border-radius:50%;place-items:center;margin-left:auto;display:grid}.lib-sheet-head .iconbtn:hover{color:var(--ds-ink);background:var(--ds-canvas)}.lib-sheet .det{gap:36px}.lib-sheet .det .det-hero{aspect-ratio:4/3}@media (max-width:760px){.lib-sheet .det{grid-template-columns:1fr}}.det-head{align-items:flex-start;gap:16px;display:flex}.det-acts{flex:none;gap:8px;padding-top:4px;display:flex}.det-acts .btn{padding:8px 14px;font-size:14px}.det-acts .save.on{color:var(--ds-danger);border-color:color-mix(in srgb, var(--ds-danger) 35%, var(--ds-line-strong))}.det .mine-box{margin-top:20px}.det h3 .conf{letter-spacing:0;text-transform:none;border-radius:var(--ds-radius-pill);border:1px solid var(--ds-line);color:var(--ds-ink-secondary);margin-left:8px;padding:2px 9px;font-size:11px;font-weight:500;display:inline-block}.det h3 .conf.reviewed{color:var(--ds-success);background:var(--ds-success-soft);border-color:#0000}.det h3 .conf.drafted{color:var(--ds-warning)}.det .cautions{border:1px solid color-mix(in srgb, var(--ds-warning) 45%, transparent);background:color-mix(in srgb, var(--ds-warning) 9%, transparent);border-radius:var(--ds-radius-md,10px);margin:18px 0 4px;padding:10px 14px;font-size:13.5px;line-height:1.5}.det .cautions b{color:var(--ds-ink);align-items:center;gap:6px;margin-bottom:4px;font-weight:600;display:flex}.det .cautions b svg{color:var(--ds-warning)}.det .cautions ul{color:var(--ds-ink-secondary);margin:0;padding-left:20px}.lib.lib-index{padding-top:0}.lib-index h2{letter-spacing:.14em;text-transform:uppercase;color:var(--ds-ink-secondary);border-top:1px solid var(--ds-line);margin:0 0 12px;padding-top:32px;font-size:12px;font-weight:700}.lib-index ul{columns:4 220px;column-gap:24px;margin:0;padding:0;font-size:14px;line-height:1.7;list-style:none}.lib-index li{break-inside:avoid}.lib-index a{color:var(--ds-ink-secondary);text-decoration:none}.lib-index a:hover{color:var(--ds-ink);text-decoration:underline}.tw .tw-water{fill:color-mix(in srgb, var(--ds-water) 30%, transparent);stroke:none}.tw .tw-sub{fill:var(--ds-substrate);opacity:.8;stroke:none}.tw .tw-edge{fill:none;stroke:var(--ds-ink-secondary);stroke-width:1.2px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.tank-group{margin-top:28px}.tank-group:first-of-type{margin-top:4px}.tank-group h2{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-size:22px;font-weight:500}.tank-group h2 small{font-family:var(--sans,inherit);color:var(--ds-ink-tertiary);margin-left:8px;font-size:13px;font-weight:400}.tank-group>p{max-width:72ch;margin:4px 0 12px;font-size:13px;line-height:1.5}.tank-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;display:grid}.tank-card{border-radius:var(--ds-radius-md);background:var(--ds-surface-raised);color:var(--ds-ink);align-items:center;gap:12px;min-width:0;padding:10px 12px;text-decoration:none;transition:box-shadow .15s;display:flex;position:relative}.tank-card:hover{box-shadow:var(--ds-shadow-md)}.tank-card .tw{flex:none}.tank-card .tc-body{flex:1;gap:1px;min-width:0;display:grid}.tank-card .nm{font-family:var(--serif);text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:500;line-height:1.25;overflow:hidden}.tank-card .tc-v{color:var(--ds-ink);font-variant-numeric:tabular-nums;font-size:13.5px}.tank-card .tc-d{color:var(--ds-ink-secondary);font-variant-numeric:tabular-nums;font-size:12.5px}.tank-card .fav{flex:none;align-self:flex-start}.tank-foot{margin-top:28px;font-size:13px}.tank-foot a{color:var(--ds-ink);text-decoration:underline;-webkit-text-decoration-color:var(--ds-accent);text-decoration-color:var(--ds-accent)}.det .tank-sub{font-size:15px;font-style:normal}.det .tank-fits{margin-top:18px}.det .tank-fits p{margin:4px 0 12px;font-size:14px;line-height:1.6}.det .tank-fits a{color:var(--ds-ink)}.det .tank-fits .linkbtn{color:var(--ds-ink-secondary);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;text-decoration:underline}.det .tank-acts{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.det .tank-acts .btn{text-decoration:none}.det .det-hero .tw{padding:24px}.lib .lib-totop{z-index:25;border:1px solid var(--ds-line-strong);background:var(--ds-surface-raised);width:44px;height:44px;color:var(--ds-ink);box-shadow:var(--ds-shadow-sm);border-radius:50%;place-items:center;padding:0;transition:transform .22s;display:grid;position:fixed;bottom:24px;right:24px;transform:translateY(calc(100% + 64px))}.lib .lib-totop.on{transform:none}.lib .lib-totop:hover{background:var(--ds-surface)}@media (prefers-reduced-motion:reduce){.lib .lib-totop{transition:none}}.var-sec{margin-top:12px}.var-list{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.var-tile{text-align:left;background:var(--ds-surface);border:1px solid var(--ds-line);border-radius:var(--ds-radius-sm);width:104px;color:var(--ds-ink-secondary);align-content:start;gap:4px;padding:6px;font-size:12px;line-height:1.3;display:grid}button.var-tile{cursor:pointer}.var-tile.on{border-color:var(--ds-moss);color:var(--ds-ink)}.var-tile .img{background:var(--ds-canvas);border-radius:var(--ds-radius-xs);justify-content:center;align-items:center;height:70px;display:flex;overflow:hidden}.var-tile .img>img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%}.var-tile .img>svg{width:100%;height:100%}.var-tile .nm{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.var-tile .aka{color:var(--ds-ink-tertiary);font-size:11px}ul.var-list{margin:10px 0 0;padding:0;list-style:none}
