:root{--color-banner:#6b2b2b;--color-banner-text:#f6f0e6;--color-left-bg:#f6f0e6;--color-right-bg:#eadcc6;--color-label:#8a6b3f;--color-text:#2a2420;--color-text-muted:#5c534c;--color-border:#c9b89a;--color-row-hover:#6b2b2b14;--color-row-selected:#6b2b2b29;--color-input-bg:#faf6ef;--font-display:"Cormorant Garamond", "Libre Baskerville", Georgia, serif;--font-ui:"Libre Baskerville", "Cormorant Garamond", Georgia, serif;--banner-height:3.25rem;--left-botanical-width:2.75rem;--layout-min:1024px;--layout-max:2048px}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;color:var(--color-text);font-family:var(--font-ui);background:#d9cbb4;margin:0;font-size:15px;line-height:1.45}body{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E")}#app{min-width:var(--layout-min);max-width:var(--layout-max);background:var(--color-left-bg);flex-direction:column;min-height:100dvh;margin-inline:auto;display:flex;box-shadow:0 0 40px #2a24202e}button,input,select{font:inherit}button{cursor:pointer}.banner{height:var(--banner-height);background:var(--color-banner);color:var(--color-banner-text);flex-shrink:0;align-items:center;gap:1.5rem;padding:0 1.25rem;display:flex}.banner__brand{color:inherit;flex-shrink:0;align-items:center;gap:.65rem;text-decoration:none;display:flex}.banner__logo{width:1.75rem;height:1.75rem;display:block}.banner__wordmark{font-family:var(--font-display);letter-spacing:.04em;font-size:1.15rem;font-weight:600}.banner__nav{flex:1;justify-content:center;gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}.banner__nav button{color:inherit;font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;opacity:.85;background:0 0;border:none;border-bottom:1px solid #0000;padding:.35rem 0;font-size:.85rem}.banner__nav button:hover{opacity:1}.banner__nav button.is-active{opacity:1;border-bottom-color:var(--color-banner-text)}.banner__langs{flex-shrink:0;gap:.4rem;display:flex}.banner__langs button{color:inherit;letter-spacing:.08em;text-transform:uppercase;opacity:.7;background:0 0;border:1px solid #0000;padding:.2rem .35rem;font-size:.7rem}.banner__langs button.is-active{opacity:1;border-color:#f6f0e673}.shell{min-height:0;height:calc(100dvh - var(--banner-height) - 2rem);flex:1;grid-template-columns:minmax(420px,48%) minmax(0,1fr);display:grid}.pane-left{background:var(--color-left-bg);border-right:1px solid var(--color-border);min-height:0;display:flex;position:relative;overflow:hidden}.pane-left__botanical{width:var(--left-botanical-width);background:url(/assets/botanical-strip.jpg) top/100% no-repeat;background-color:var(--color-left-bg);opacity:.85;flex-shrink:0}.pane-left__body{flex-direction:column;flex:1;min-width:0;padding:1.5rem 1.5rem 1rem 1rem;display:flex;overflow:hidden}.pane-label{color:var(--color-label);font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .35rem;font-size:.85rem}.pane-title{font-family:var(--font-display);margin:0 0 1.15rem;font-size:1.85rem;font-weight:600;line-height:1.2}.panel-chrome{flex-direction:column;flex-shrink:0;gap:.75rem;margin-bottom:1rem;display:flex}.search-row{gap:.5rem;display:flex}.search-row input,.panel-chrome select,.panel-chrome input[type=search]{border:1px solid var(--color-border);background:var(--color-input-bg);min-width:0;color:var(--color-text);border-radius:999px;outline:none;flex:1;padding:.55rem 1rem}.search-row input:focus,.panel-chrome select:focus,.panel-chrome input[type=search]:focus{border-color:var(--color-banner)}.search-row button{background:var(--color-banner);width:2.75rem;height:2.75rem;color:var(--color-banner-text);border:none;border-radius:999px;flex-shrink:0;place-items:center;display:grid}.search-row button svg{width:1.15rem;height:1.15rem}.dropdown-row{gap:.65rem;display:flex}.dropdown-row select{flex:1}.back-link{color:var(--color-label);background:0 0;border:none;align-self:flex-start;padding:0;font-size:.9rem}.hint,.empty-list{color:var(--color-text-muted);margin:.5rem 0;font-size:.92rem}.result-list{flex:1;min-height:0;margin:0;padding:0;list-style:none;overflow:auto}.result-list li{border-top:1px solid #c9b89a8c}.result-list button.row{text-align:left;width:100%;color:inherit;background:0 0;border:none;grid-template-columns:5.5rem 6.5rem minmax(0,1fr);align-items:baseline;gap:.65rem;padding:.7rem .35rem;display:grid}.result-list button.row:hover{background:var(--color-row-hover)}.result-list button.row.is-selected{background:var(--color-row-selected)}.result-list button.row.is-disabled,.result-list button.row:disabled{opacity:.42;cursor:not-allowed;color:var(--color-text-muted)}.result-list button.row.is-disabled:hover,.result-list button.row:disabled:hover{background:0 0}.result-list .row__datum,.result-list .row__ort{color:var(--color-text-muted);letter-spacing:.02em;font-size:.78rem}.result-list .row__title{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;overflow:hidden}.cycle-list{flex:1;margin:0;padding:0;list-style:none;overflow:auto}.cycle-list button{text-align:left;width:100%;color:inherit;background:0 0;border:none;border-top:1px solid #c9b89a8c;align-items:baseline;gap:.75rem;padding:.75rem .35rem;display:flex}.cycle-list button:hover{background:var(--color-row-hover)}.cycle-list .cycle-num{width:2rem;color:var(--color-label);flex-shrink:0;font-size:.85rem}.cycle-list .cycle-title{flex:1;font-size:.92rem}.cycle-list .cycle-count{color:var(--color-text-muted);flex-shrink:0;font-size:.78rem}.pane-right{background:var(--color-right-bg);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.pdf-toolbar{border-bottom:1px solid var(--color-border);background:#f6f0e68c;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.5rem;padding:.65rem .85rem;display:flex}.pdf-toolbar button,.pdf-toolbar a{border:1px solid var(--color-banner);background:var(--color-input-bg);color:var(--color-text);text-align:center;border-radius:.35rem;min-width:2.1rem;padding:.25rem .55rem;text-decoration:none}.pdf-toolbar button:disabled{opacity:.4;cursor:not-allowed}.pdf-toolbar select{border:1px solid var(--color-border);background:var(--color-input-bg);border-radius:.35rem;max-width:14rem;padding:.25rem .45rem}.pdf-toolbar .spacer{flex:1}.pdf-iframe{background:#fff;border:none;flex:1;width:100%;min-height:0}.pdf-empty{text-align:center;color:var(--color-text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;padding:2rem;display:flex}.pdf-empty img{opacity:.95;border-radius:2px;width:min(280px,70%);height:auto}.pdf-empty p{max-width:22rem;font-family:var(--font-display);margin:0;font-size:1.15rem}.site-footer{background:var(--color-banner);color:var(--color-banner-text);flex-shrink:0;justify-content:flex-end;padding:.35rem 1rem;display:flex}.site-footer__link{color:inherit;font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;opacity:.85;background:0 0;border:none;padding:.2rem 0;font-size:.75rem}.site-footer__link:hover{opacity:1;text-decoration:underline}.legal-overlay{z-index:1000;background:#2a242073;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.legal-overlay__panel{background:var(--color-left-bg);width:min(720px,100%);max-height:min(90dvh,900px);color:var(--color-text);border:1px solid var(--color-border);flex-direction:column;display:flex;box-shadow:0 12px 40px #2a242047}.legal-overlay__header{border-bottom:1px solid var(--color-border);background:#eadcc673;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.15rem;display:flex}.legal-overlay__header h1{font-family:var(--font-display);margin:0;font-size:1.35rem;font-weight:600}.legal-overlay__close{border:1px solid var(--color-banner);background:var(--color-input-bg);color:var(--color-text);border-radius:.35rem;padding:.3rem .65rem;font-size:.85rem}.legal-overlay__body{padding:1rem 1.25rem 1.5rem;font-size:.92rem;line-height:1.55;overflow:auto}.legal-section{margin-bottom:1.25rem}.legal-section h2{font-family:var(--font-display);color:var(--color-banner);margin:0 0 .45rem;font-size:1.05rem;font-weight:600}.legal-section p{margin:0 0 .65rem}.legal-section a{color:var(--color-banner)}.legal-draft-note{border-left:3px solid var(--color-label);background:#8a6b3f1f;padding:.65rem .75rem;font-size:.88rem}
