@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cinzel-latin-ext-500-normal-1Z8Q-7rh.woff2) format("woff2"),url(/assets/cinzel-latin-ext-500-normal-BxIh9iwm.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cinzel-latin-500-normal-B-2dbOfA.woff2) format("woff2"),url(/assets/cinzel-latin-500-normal-DMNTwV-V.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-ext-600-normal-BEFdM_VE.woff2) format("woff2"),url(/assets/cinzel-latin-ext-600-normal-BY9Mq9iK.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-600-normal-Dd5YO2UX.woff2) format("woff2"),url(/assets/cinzel-latin-600-normal-CH_LB4su.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-cyrillic-ext-400-normal-CBouUAPx.woff2) format("woff2"),url(/assets/alegreya-sans-cyrillic-ext-400-normal-ClLgPhqT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-cyrillic-400-normal-CFUoBDld.woff2) format("woff2"),url(/assets/alegreya-sans-cyrillic-400-normal-C2XSGevv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-greek-ext-400-normal-CaUEPd_u.woff2) format("woff2"),url(/assets/alegreya-sans-greek-ext-400-normal-D6j-TQLM.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-greek-400-normal-B87Md6o9.woff2) format("woff2"),url(/assets/alegreya-sans-greek-400-normal-8U5NAP_q.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-vietnamese-400-normal-D7fwYHgb.woff2) format("woff2"),url(/assets/alegreya-sans-vietnamese-400-normal-BFvpiE3j.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-latin-ext-400-normal-D7N6b6bd.woff2) format("woff2"),url(/assets/alegreya-sans-latin-ext-400-normal-DpBVrRWA.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-latin-400-normal-DtLlO8BS.woff2) format("woff2"),url(/assets/alegreya-sans-latin-400-normal-DmA8jeke.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Alegreya Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-cyrillic-ext-400-italic-T00rgbz1.woff2) format("woff2"),url(/assets/alegreya-sans-cyrillic-ext-400-italic-BpLolsQ8.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Alegreya Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-cyrillic-400-italic-BfxaBkav.woff2) format("woff2"),url(/assets/alegreya-sans-cyrillic-400-italic-Bc6UFQqS.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Alegreya Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-greek-ext-400-italic-CqU0VZms.woff2) format("woff2"),url(/assets/alegreya-sans-greek-ext-400-italic-Dsqv3611.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Alegreya Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-greek-400-italic-Y4Zag0Am.woff2) format("woff2"),url(/assets/alegreya-sans-greek-400-italic-omD4Z7vk.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Alegreya Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-vietnamese-400-italic-DWlx-poF.woff2) format("woff2"),url(/assets/alegreya-sans-vietnamese-400-italic-CmFF8Y5k.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Alegreya Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-latin-ext-400-italic-DX574ivH.woff2) format("woff2"),url(/assets/alegreya-sans-latin-ext-400-italic-DeNTv1Y-.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Alegreya Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/alegreya-sans-latin-400-italic-rmlAbObI.woff2) format("woff2"),url(/assets/alegreya-sans-latin-400-italic-CgbdrOqg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/alegreya-sans-cyrillic-ext-500-normal-BjdEjhHc.woff2) format("woff2"),url(/assets/alegreya-sans-cyrillic-ext-500-normal-CBZLRaMr.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/alegreya-sans-cyrillic-500-normal-kQHBM3cE.woff2) format("woff2"),url(/assets/alegreya-sans-cyrillic-500-normal-gEBUHwKD.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/alegreya-sans-greek-ext-500-normal-8OvC5Vmr.woff2) format("woff2"),url(/assets/alegreya-sans-greek-ext-500-normal-Cp0bGOKK.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/alegreya-sans-greek-500-normal-CjlmbScm.woff2) format("woff2"),url(/assets/alegreya-sans-greek-500-normal-BwxJMQU_.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/alegreya-sans-vietnamese-500-normal-CFLbXWhL.woff2) format("woff2"),url(/assets/alegreya-sans-vietnamese-500-normal-B1LHNMw0.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/alegreya-sans-latin-ext-500-normal-TH5u60nj.woff2) format("woff2"),url(/assets/alegreya-sans-latin-ext-500-normal-CxFoZ42m.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/arcanes-chiffres-500-DS713u5J.woff2) format("woff2"),url(/assets/alegreya-sans-latin-500-normal-vXxrTKJT.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-sans-cyrillic-ext-700-normal-Cpzx2u2L.woff2) format("woff2"),url(/assets/alegreya-sans-cyrillic-ext-700-normal-YOec_wOb.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-sans-cyrillic-700-normal-BMO00Gdb.woff2) format("woff2"),url(/assets/alegreya-sans-cyrillic-700-normal-qSextXl4.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-sans-greek-ext-700-normal-ChNZoGr1.woff2) format("woff2"),url(/assets/alegreya-sans-greek-ext-700-normal-BVJ8GoGc.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-sans-greek-700-normal-CTof9pYC.woff2) format("woff2"),url(/assets/alegreya-sans-greek-700-normal-BZuMtSJ5.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-sans-vietnamese-700-normal-CHYTK2w7.woff2) format("woff2"),url(/assets/alegreya-sans-vietnamese-700-normal-D0056cUE.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-sans-latin-ext-700-normal-HuHd3-Mg.woff2) format("woff2"),url(/assets/alegreya-sans-latin-ext-700-normal-CkNjzB9Y.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/alegreya-sans-latin-700-normal-DEbcy2sF.woff2) format("woff2"),url(/assets/alegreya-sans-latin-700-normal-BnzUNlma.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--deep: #0b151b;--bg: #0e1a21;--surface: #12212a;--raised: #1a2c36;--text: #eef1f2;--text-2: #a9b6bd;--muted: #84949d;--line: rgb(238 241 242 / .08);--line-strong: rgb(238 241 242 / .16);--accent: #e2c16b;--accent-ink: #1a1405;--mark: rgb(226 193 107 / .3);--danger: #ec7a72;--ok: #7cc69a;--shadow: 0 12px 32px rgb(0 0 0 / .45);--font-display: "Arcanes Chiffres", "Cinzel", "Trajan Pro", Georgia, serif;--font-body: "Alegreya Sans", "Segoe UI", system-ui, sans-serif;--ease: cubic-bezier(.22, 1, .36, 1);--fs-12: .75rem;--fs-14: .875rem;--fs-15: .9375rem;--fs-17: 1.0625rem;--fs-20: 1.25rem;--fs-24: 1.5rem;--fs-32: 2rem;--r-sm: 4px;--r-md: 8px;--r-lg: 12px;color-scheme:dark}@font-face{font-family:Arcanes Chiffres;src:url(/assets/arcanes-chiffres-500-DS713u5J.woff2) format("woff2");font-weight:400 700;font-display:swap;unicode-range:U+0030-0039}*{box-sizing:border-box}[hidden]{display:none!important}html,body,#root{height:100%;margin:0}html{font-size:16px}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--fs-15);line-height:1.45;-webkit-font-smoothing:antialiased}#root{display:flex;flex-direction:column}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--accent);text-underline-offset:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}kbd{font-family:var(--font-body);font-size:var(--fs-12);line-height:1;min-width:20px;padding:4px 6px;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:var(--r-sm);color:var(--muted);background:var(--surface);text-align:center}.topbar{padding:16px 24px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:12px;background:var(--surface)}.titlebar{display:flex;align-items:center;gap:12px 16px;flex-wrap:wrap;min-height:36px}.brand{font-family:var(--font-display);font-weight:600;font-size:var(--fs-20);letter-spacing:.02em;margin:0;color:var(--text);text-decoration:none;text-wrap:balance}.count{color:var(--muted);font-size:var(--fs-14);font-variant-numeric:tabular-nums}.spacer{flex:1}.account{display:flex;align-items:center;gap:4px;flex-wrap:wrap;font-size:var(--fs-14)}.account .who{color:var(--text)}.account .who.current{background:var(--raised)}.btn{border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--r-md);padding:8px 16px;min-height:36px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;color:var(--text);font-size:var(--fs-15);font-weight:500;line-height:1.2;transition:background-color .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease),transform .12s var(--ease)}.btn:hover{background:var(--raised)}.btn:active{transform:scale(.98)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn.primary:hover{background:var(--accent);filter:brightness(1.06)}.btn.ghost{border-color:transparent;background:transparent;color:var(--text-2)}.btn.ghost:hover{background:var(--raised);color:var(--text)}.btn.danger{color:var(--danger)}.btn.danger.armed{background:var(--danger);color:var(--surface);border-color:var(--danger)}.btn.small{padding:4px 12px;min-height:32px;font-size:var(--fs-14)}.btn.small.icon{padding:4px 8px;min-width:32px}.btn.ghost.danger{color:var(--danger)}.btn.ghost.danger:hover{background:#ec7a721f}.tag-clear{display:inline-flex;align-items:center;gap:4px}.btn:disabled{opacity:.55;cursor:default;transform:none}.searchrow{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.search{flex:1 1 320px;min-width:0;position:relative}.search input{width:100%;height:40px;padding:0 48px 0 40px;border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--bg);font-size:var(--fs-15)}.search input::placeholder{color:var(--muted)}.search>svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.search kbd{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none}.searchrow select{height:40px;padding:0 12px;border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--bg);font-size:var(--fs-15)}.chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.chiplabel{color:var(--muted);font-size:var(--fs-14);margin-right:4px}.chip{border:1px solid var(--line-strong);background:transparent;border-radius:16px;min-height:32px;padding:4px 12px;cursor:pointer;font-size:var(--fs-14);color:var(--text-2);transition:background-color .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease)}.chip:hover{color:var(--text);background:var(--raised)}.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.activetag{font-size:var(--fs-14);color:var(--muted);display:flex;gap:8px;align-items:center}.library{flex:1;min-height:0;display:grid;grid-template-columns:minmax(300px,380px) 1fr}.list{border-right:1px solid var(--line);overflow-y:auto;background:var(--deep)}.list ol{list-style:none;margin:0;padding:0}.group{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:8px 20px;background:var(--deep);border-bottom:1px solid var(--line);font-size:var(--fs-14);font-weight:500;color:var(--text)}.group span:last-child{color:var(--muted);font-weight:400;font-variant-numeric:tabular-nums}.item{display:grid;gap:4px;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 20px 12px 17px;cursor:pointer;border-left:3px solid transparent;color:inherit;text-decoration:none;transition:background-color .15s var(--ease)}.item:hover{background:var(--bg)}.item[aria-current=true]{background:var(--surface);border-left-color:var(--accent)}.item .meta{font-size:var(--fs-12);color:var(--muted);display:flex;gap:4px 8px;flex-wrap:wrap;font-variant-numeric:tabular-nums}.item .meta .mat{color:var(--text-2);font-weight:500}.item .meta .cote{margin-left:auto;letter-spacing:.02em}.item .t{font-weight:500;font-size:var(--fs-15);color:var(--text)}.item .ex{font-size:var(--fs-14);color:var(--muted);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}mark{background:var(--mark);color:inherit;border-radius:2px;padding:0 2px}.empty{padding:24px 20px;color:var(--muted);font-size:var(--fs-14)}.empty strong{color:var(--text);font-weight:500;display:block;margin-bottom:4px;font-size:var(--fs-15)}.detail{overflow-y:auto;padding:40px clamp(16px,5vw,64px) 64px;background:var(--surface)}.detail article{max-width:68ch}.detail .back{display:none;margin-bottom:16px}.folio{display:grid;grid-template-columns:auto 1fr;gap:0 20px;align-items:end}.folio .numeral{font-family:var(--font-display);font-weight:500;font-size:3.5rem;line-height:.9;color:var(--accent);font-variant-numeric:lining-nums}.kicker{color:var(--text-2);font-size:var(--fs-14);font-weight:500}.detail h2{font-family:var(--font-display);font-weight:500;font-size:var(--fs-32);line-height:1.15;letter-spacing:.01em;margin:4px 0 0;text-wrap:balance}.rule{height:1px;margin:24px 0 20px;background:linear-gradient(to right,var(--accent) 0 48px,var(--line-strong) 48px)}.facts{display:flex;gap:12px 32px;flex-wrap:wrap;margin:0 0 20px}.facts div{display:grid;gap:2px}.facts dt{color:var(--muted);font-size:var(--fs-12)}.facts dd{margin:0;font-size:var(--fs-14);font-weight:500;font-variant-numeric:tabular-nums}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.tag{background:transparent;color:var(--text-2);border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:2px 8px;font-size:var(--fs-14);cursor:pointer;transition:background-color .15s var(--ease),color .15s var(--ease)}.tag:hover{background:var(--raised);color:var(--text)}.actions{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.notes{font-size:var(--fs-17);line-height:1.6}.notes h3{font-size:var(--fs-20);font-weight:500;line-height:1.3;margin:32px 0 8px}.notes h4{font-size:var(--fs-17);font-weight:500;margin:24px 0 4px}.notes p{margin:0 0 12px}.notes ul,.notes ol{margin:0 0 16px;padding-left:24px}.notes li{margin:4px 0}.notes li::marker{color:var(--muted)}.notes strong{font-weight:600}.notes code{background:var(--raised);border-radius:var(--r-sm);padding:0 4px;font-size:.9em}.notes>div>:first-child{margin-top:0}.notes>div>p:first-of-type:first-letter{font-family:var(--font-display);font-weight:500;float:left;font-size:3.4em;line-height:.82;margin:6px 8px 0 0;color:var(--accent)}.placeholder{color:var(--text-2);padding-top:24px;max-width:48ch}.placeholder h2{color:var(--text);font-size:var(--fs-24)}.placeholder p{margin:12px 0 0}.hint{font-size:var(--fs-14);color:var(--muted)}.banner{padding:8px 24px;font-size:var(--fs-14);background:var(--raised);border-bottom:1px solid var(--line)}.banner.error{color:var(--danger)}dialog{border:1px solid var(--line-strong);border-radius:var(--r-lg);background:var(--surface);color:var(--text);padding:0;width:min(720px,calc(100vw - 32px));max-height:calc(100% - 32px);box-shadow:var(--shadow)}dialog::backdrop{background:#04090c99}.form{display:flex;flex-direction:column;gap:16px}dialog .form{padding:24px}.form h2,.card h1,.page h1{font-family:var(--font-display);font-weight:500;margin:0;text-wrap:balance}.form h2{font-size:var(--fs-20)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}label.field{display:flex;flex-direction:column;gap:4px;font-size:var(--fs-14);color:var(--text-2)}label.field input,label.field textarea,label.field select,.inline-form input{border:1px solid var(--line-strong);background:var(--bg);border-radius:var(--r-md);padding:8px 12px;min-height:40px;color:var(--text);font-size:var(--fs-15)}label.field textarea{min-height:264px;resize:vertical;line-height:1.5}label.field .hint{margin-top:2px}.formactions{display:flex;gap:8px;justify-content:flex-end;align-items:center;flex-wrap:wrap}.err{color:var(--danger);font-size:var(--fs-14);margin:0}.formactions .err{margin-right:auto}.ok{color:var(--ok);font-size:var(--fs-14);margin:0}.center{flex:1;display:grid;place-items:center;padding:32px 16px}.card{width:min(420px,100%);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;gap:16px}.card h1{font-size:var(--fs-24)}.card p{margin:0;color:var(--text-2)}.card p b{color:var(--text);font-weight:500}.page{flex:1;overflow-y:auto;padding:32px clamp(16px,4vw,40px) 48px;display:flex;flex-direction:column;gap:40px}.page section{display:flex;flex-direction:column;gap:12px;max-width:1000px;width:100%}.page h1{font-size:var(--fs-32)}.page h2{font-family:var(--font-body);font-size:var(--fs-20);font-weight:500;margin:0}.page .lead{color:var(--text-2);margin:0;max-width:70ch}.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}table{width:100%;border-collapse:collapse;font-size:var(--fs-15)}th,td{text-align:left;padding:8px 12px;border-bottom:1px solid var(--line);vertical-align:middle;height:48px}th{font-weight:500;color:var(--muted);font-size:var(--fs-14);height:40px}td b{font-weight:500}tr:last-child td{border-bottom:0}td .rowactions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}td.num{font-variant-numeric:tabular-nums;text-align:right}th.num{text-align:right}.pill{display:inline-block;border-radius:12px;padding:2px 8px;font-size:var(--fs-12);border:1px solid var(--line-strong);color:var(--text-2)}.pill.admin,.pill.pending{border-color:var(--accent);color:var(--accent)}.pill.used{border-color:var(--ok);color:var(--ok)}.pill.off{border-color:var(--danger);color:var(--danger)}.inline-form{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.inline-form label.field{flex:1 1 220px}td .inline-form{gap:8px;align-items:center}td .inline-form input{min-height:32px;padding:4px 8px}.linkbox{border:1px solid var(--accent);background:var(--surface);border-radius:var(--r-lg);padding:16px;display:flex;flex-direction:column;gap:8px}.linkbox strong{font-weight:500}.linkbox code{word-break:break-all;font-size:var(--fs-14);background:var(--raised);border-radius:var(--r-sm);padding:8px}.linkbox .row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}@media(max-width:760px){.topbar{padding:12px 16px}.library{grid-template-columns:1fr}.list{border-right:0}.detail{display:none;padding:20px 16px 40px}.library.show-detail .list{display:none}.library.show-detail .detail{display:block}.detail .back{display:inline-flex}.detail h2{font-size:var(--fs-24)}.folio .numeral{font-size:2.5rem}th.hide-sm,td.hide-sm,.search kbd{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}}.tabs{display:flex;gap:4px;margin-left:8px}.tab{color:var(--text-2);text-decoration:none;font-size:var(--fs-15);font-weight:500;padding:4px 12px;border-radius:var(--r-md);transition:background-color .15s var(--ease),color .15s var(--ease)}.tab:hover{background:var(--raised);color:var(--text)}.tab.active{color:var(--text);background:var(--raised);box-shadow:inset 0 -2px 0 var(--accent)}.cover{--leather: #34466c;position:relative;display:grid;grid-template-columns:16px 1fr;width:240px;aspect-ratio:3 / 4;border-radius:4px 8px 8px 4px;background:var(--leather);box-shadow:0 12px 28px #00000073,inset 0 0 0 1px #ffffff0f;overflow:hidden}.cover-sm{width:176px}.cover-spine{background:linear-gradient(to right,#00000059,#0000001a 60%,#ffffff0d);border-right:1px solid rgb(0 0 0 / .3)}.cover-face{padding:12px;display:grid}.cover-frame{border:1px solid rgb(226 193 107 / .55);outline:1px solid rgb(226 193 107 / .25);outline-offset:-5px;border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px 12px;text-align:center;color:#e2c16b}.cover-matiere{font-size:var(--fs-12);color:#e2c16bcc}.cover-title{font-family:var(--font-display);font-weight:500;font-size:var(--fs-20);line-height:1.2;text-wrap:balance}.cover-year{font-size:var(--fs-12);color:#e2c16bcc}.cover-sm .cover-face{padding:8px}.cover-sm .cover-frame{padding:8px;gap:4px}.cover-sm .cover-title{font-size:var(--fs-15)}.cover-sm .cover-matiere,.cover-sm .cover-year{font-size:var(--fs-12)}.shelf{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:40px 32px;max-width:1000px}.shelf-item{display:grid;gap:8px;justify-items:start;color:inherit;text-decoration:none}.shelf-item .cover{transition:transform .18s var(--ease)}.shelf-item:hover .cover{transform:translateY(-4px)}.shelf-title{font-weight:500}.shelf-meta{font-size:var(--fs-14);color:var(--muted)}.page.recueil{display:grid;grid-template-columns:280px minmax(0,68ch);gap:48px;align-items:start;justify-content:center}.recueil-side{position:sticky;top:0;display:grid;gap:24px}.toc h2{font-size:var(--fs-15);font-weight:500;color:var(--text-2);margin:0 0 8px}.toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}.toc button{width:100%;display:grid;grid-template-columns:32px 1fr;gap:8px;text-align:left;border:0;background:transparent;padding:8px;border-radius:var(--r-md);cursor:pointer;color:var(--text);font-size:var(--fs-14);transition:background-color .15s var(--ease)}.toc button:hover{background:var(--raised)}.toc-num{font-family:var(--font-display);color:var(--muted)}.recueil-body{display:flex;flex-direction:column;gap:0;align-items:stretch}.recueil-body>.btn{align-self:flex-start;margin-bottom:16px}.recueil-head{display:grid;gap:8px;margin-bottom:24px}.recueil-head h1{font-size:var(--fs-32)}.recueil-head .actions{margin:8px 0 0}.recueil-desc{margin:4px 0 0;color:var(--text-2);font-size:var(--fs-17);line-height:1.6}.chapter{padding-top:48px;margin-top:24px;border-top:1px solid var(--line);scroll-margin-top:16px}.chapter:first-of-type{border-top:0;margin-top:0;padding-top:24px}.chapter h2{font-family:var(--font-display);font-weight:500;font-size:var(--fs-24);line-height:1.2;margin:4px 0 0}.chapter h2 a{color:inherit;text-decoration:none}.chapter h2 a:hover{text-decoration:underline;text-decoration-color:var(--line-strong)}.compose-grid{display:grid;grid-template-columns:minmax(0,720px) 280px;gap:48px;align-items:start}.compose-main{display:flex;flex-direction:column;gap:16px}.compose-main>.btn{align-self:flex-start}.compose-main h2{margin-top:16px}.compose-side{position:sticky;top:0;display:grid;gap:16px;justify-items:start}.compose-side .btn.primary{width:240px}label.field textarea.short{min-height:96px}.picklist{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.picklist li{display:flex;gap:12px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line);min-height:56px}.picklist li:last-child{border-bottom:0}.pick-num{width:24px;text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.pick-text{flex:1;min-width:0;display:grid;gap:2px}.pick-text b{font-weight:500}.picklist .rowactions{display:flex;gap:4px}@media(max-width:1100px){.page.recueil,.compose-grid{grid-template-columns:1fr;gap:32px}.recueil-side,.compose-side{position:static}}@media(max-width:760px){.tabs{margin-left:0}.cover{width:200px}.picklist li{flex-wrap:wrap}}@media(max-width:760px),(hover:none)and (pointer:coarse){.only-desktop{display:none!important}}.maison-select{border:1px solid var(--line-strong);background:var(--bg);border-radius:var(--r-md);padding:4px 8px;min-height:32px;color:var(--text);font-size:var(--fs-14)}label.field .maison-select{min-height:40px;padding:8px 12px;font-size:var(--fs-15)}.spell-pad{display:block;width:100%;height:100%;touch-action:none;-webkit-user-select:none;user-select:none;cursor:none;outline:none}.spell-pad:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:var(--r-lg)}.spell-ring{fill:none;stroke:var(--line);stroke-width:1}.spell-point circle{fill:var(--bg);stroke:var(--line-strong);stroke-width:2;transition:fill .15s,stroke .15s}.spell-point.on circle{fill:var(--accent);stroke:var(--accent)}.spell-point text{fill:var(--muted);font-family:var(--font-display);font-size:17px}.spell-point.on text{fill:var(--text)}.spell-line,.spell-halo,.spell-live{fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round}.spell-line{stroke-width:4}.spell-halo{stroke-width:14;opacity:.16}.spell-live{stroke-width:3;opacity:.55}.spell-wand{pointer-events:none}.spell-wand>circle{fill:var(--accent)}.wand-shaft{stroke:#8a6a45;stroke-width:4;stroke-linecap:round}.wand-grip{stroke:#4c3622;stroke-width:7;stroke-linecap:round}.wand-glow{fill:var(--accent);opacity:.22}.wand-tip{fill:#fff6d6}.spell-pad.is-casting .spell-trace{animation:spell-pulse .7s ease-in-out infinite}.spell-pad.is-ok .spell-line{stroke:#fff1c2}.spell-pad.is-ok .spell-halo{opacity:.4;stroke-width:22;transition:opacity .5s,stroke-width .5s}.spell-pad.is-fail .spell-line,.spell-pad.is-fail .spell-halo{stroke:var(--danger)}.spell-pad.is-fail .spell-point.on circle{fill:var(--danger);stroke:var(--danger)}.spell-pad.is-fail .spell-trace{animation:spell-fade .9s var(--ease) forwards}.spell-pad.is-fail{animation:spell-shake .35s linear}@keyframes spell-pulse{50%{opacity:.45}}@keyframes spell-fade{60%{opacity:1}to{opacity:0}}@keyframes spell-shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}@media(prefers-reduced-motion:reduce){.spell-pad.is-casting .spell-trace,.spell-pad.is-fail,.spell-pad.is-fail .spell-trace{animation:none}}.gate{display:grid;place-items:center;overflow:auto}.gate-back{position:absolute;top:16px;left:24px}.gate-inner{display:grid;justify-items:center;gap:8px;padding:72px 24px 32px;text-align:center}.gate-kicker{margin:0;font-size:var(--fs-15);color:var(--muted)}.gate h1{margin:0;font-family:var(--font-display);font-weight:500;font-size:var(--fs-32);color:var(--text)}.gate-pad{width:min(60vh,440px,calc(100vw - 48px));aspect-ratio:1;margin:8px 0}.gate-message{margin:0;min-height:24px;font-size:var(--fs-17);color:var(--text)}.gate-message.is-fail{color:var(--danger)}.gate-hint{margin:0;max-width:460px;font-size:var(--fs-14);color:var(--muted)}.gate-hint kbd{margin:0 2px}.gate.is-open .gate-inner{opacity:0;transition:opacity .6s var(--ease) .3s}.sort-card{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:24px;align-items:start}.sort-card .sort-pad{aspect-ratio:1;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.sort-side{display:grid;gap:16px}.sort-path{margin:0;padding:0;max-width:none;font-family:var(--font-display);font-size:var(--fs-20);color:var(--text);overflow-wrap:anywhere}.sort-path.empty{font-family:var(--font-body);font-size:var(--fs-15);color:var(--muted)}@media(max-width:720px){.sort-card{grid-template-columns:1fr}}
