@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Libre+Caslon+Display&display=swap');
:root{--ink:#253d39;--teal:#23665a;--muted:#7e8980;--line:#e2e5dd;--cream:#f6f6f0;--font:'DM Sans',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:13px var(--font)}button,input,select,textarea{font:inherit}button{cursor:pointer;background:white;border:1px solid var(--line);border-radius:6px;padding:9px 13px;color:var(--ink);transition:background .15s,box-shadow .15s}button:hover{background:#eaf1e9}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid #7da794;outline-offset:3px}input:focus,textarea:focus{outline:1px solid #7da794}a{color:var(--teal)}header{height:86px;padding:0 32px;border-bottom:1px solid var(--line);background:#fffefa;display:flex;align-items:center;gap:90px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--ink);font:36px 'Libre Caslon Display',Georgia,serif;letter-spacing:-1px}.brand-mark{display:grid;place-items:center;width:43px;height:46px;color:var(--teal);font:37px serif;border-right:1px solid #d6dfd4;padding-right:13px}.brand small{display:block;font:8px var(--font);letter-spacing:2.2px;margin-top:2px}.brand>span:last-child{line-height:.9}nav{height:100%;display:flex;align-items:center;gap:29px}nav button{border:0;background:transparent;height:100%;border-radius:0;color:#7b877e;padding:0 3px;font-weight:500}.nav-active{color:var(--teal);border-bottom:2px solid var(--teal)}nav span{margin-left:8px}.header-right{margin-left:auto;display:flex;gap:24px;align-items:center}.engine{font-size:11px;color:#718176}i{display:inline-block;background:#70a188;width:6px;height:6px;border-radius:50%;margin-right:5px}.avatar{border-radius:50%;background:#e9ede0;border:0;width:33px;height:33px;padding:0;font-family:Georgia}.document-bar{height:113px;display:flex;justify-content:space-between;align-items:center;padding:0 32px;background:#fbfbf6}.eyebrow{font-size:9px;letter-spacing:1.9px;font-weight:600;color:#7f8b7d}.title-row{display:flex;gap:18px;align-items:center;margin-top:9px}#title{font:29px 'Libre Caslon Display',Georgia,serif;background:transparent;border:0;width:270px;color:var(--ink);padding:0}.saved{font-size:10px;color:#81917f}.saved:before{content:'✓';margin-right:5px}.doc-actions{display:flex;gap:9px}.primary{background:var(--teal);color:white;border-color:var(--teal);padding:11px 18px}.primary:hover{background:#194e45}.primary span{margin-left:22px}main{display:grid;grid-template-columns:285px minmax(350px,1fr) 230px;min-height:calc(100vh - 199px);border-top:1px solid var(--line)}h2{font-size:13px;font-weight:600;margin:0}p{line-height:1.7}.muted{color:var(--muted)}.library{background:#fffefa;border-right:1px solid var(--line);padding:24px 20px;display:flex;flex-direction:column}.panel-heading{display:flex;align-items:center;justify-content:space-between}.badge{font-size:8px;letter-spacing:1px;padding:4px 6px;background:#f0f2e9;color:#88907b;border-radius:3px}.intro{font-size:11px;margin:9px 0 19px}.search-wrap{display:flex;align-items:center;border:1px solid var(--line);border-radius:6px;padding:9px 10px;gap:8px}.search-wrap>span{font-size:22px;line-height:18px;color:#8a9688}.search-wrap input{border:0;background:transparent;min-width:0;width:100%;font-size:11px;outline:none}.search-wrap kbd{font:10px var(--font);color:#9da69b}.library-tabs{display:flex;border-bottom:1px solid var(--line);margin:16px 0 22px}.library-tabs button{flex:1;padding:10px 0;border:0;background:none;border-radius:0;font-size:11px;color:#909789}.library-tabs .active{border-bottom:2px solid var(--teal);color:var(--teal);font-weight:600}.field-label{display:block;font-size:9px;letter-spacing:1.3px;font-weight:600;color:#85917f;margin:0 0 9px}select{width:100%;background:#fffefa;border:1px solid var(--line);border-radius:5px;color:#435647;padding:10px 8px;font-size:11px}.sign-summary{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#89947f;margin:17px 0 12px}.sign-summary label{display:flex;align-items:center;gap:3px}.sign-summary input{accent-color:var(--teal);width:11px;height:11px}.sign-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;max-height:440px;overflow:auto;padding:1px}.sign-grid button{height:67px;padding:7px 2px 5px;display:flex;align-items:center;justify-content:space-between;flex-direction:column;background:#fffefa;min-width:0}.sign-grid button:hover,.sign-grid button.selected{background:#eaf1e4;border-color:#91ab83;box-shadow:0 0 0 1px #91ab8333}.sign-grid button span{font:9px var(--font);color:#8a957d}.sign-grid jsesh-text{height:36px;max-width:100%;overflow:hidden}.no-results{grid-column:1/-1;padding:25px 10px;text-align:center;color:#8a957d;font-size:12px}.load-more{margin-top:12px;font-size:11px}.library-foot{font-size:9px;color:#8c9786;line-height:1.5;margin-top:22px;display:flex;gap:7px}.workspace{min-width:0;display:flex;flex-direction:column}.toolbar{height:57px;display:flex;align-items:center;padding:0 18px;border-bottom:1px solid var(--line);background:#fafbf5;gap:12px}.tool-group{display:flex;gap:3px;padding-right:12px;border-right:1px solid var(--line)}.toolbar button{border:0;background:transparent;padding:6px;font-size:17px;white-space:nowrap}.toolbar button:hover{background:#e4ecdf}.toolbar button span{font-size:10px;margin-left:3px}.red-dot{display:inline-block;background:#ad6858;width:10px;height:10px;border-radius:50%;margin:0!important}.zoom{margin-left:auto;display:flex;align-items:center;font-size:10px;white-space:nowrap;gap:5px}.zoom button{font-size:13px}.desk{flex:1;padding:30px 32px 18px;background:#eef0e8;min-height:410px;background-image:radial-gradient(#d8dfd1 .65px,transparent .65px);background-size:12px 12px}.paper{background:#fffefa;min-height:345px;box-shadow:0 3px 11px #2337280b;border:1px solid #e2e3d8;padding:27px 30px;position:relative;display:flex;flex-direction:column}.paper-header{display:flex;justify-content:space-between;color:#a1a58f;font-size:7px;letter-spacing:1.4px;text-transform:uppercase;gap:15px}.paper-header b{font-weight:400}.paper-rule{height:1px;background:#e7e8de;margin:17px 0 30px}.paper-bottom{display:flex;justify-content:space-between;font-size:7px;letter-spacing:1.9px;color:#a4aa96;margin-top:auto;padding-top:40px}.paper-bottom>span:last-child{font-family:Georgia;letter-spacing:1px}jsesh-editor{display:block;width:100%;--jsesh-editor-border:0;--jsesh-editor-background:transparent;--jsesh-editor-min-height:160px;--jsesh-caret-color:#367c68;--jsesh-inactive-caret-color:#96ad8e;--jsesh-selection-color:#82b18c44}jsesh-editor::part(surface){padding:0;overflow:auto;outline:none}jsesh-editor:focus-within{outline:1px dashed #d6decb;outline-offset:8px}#empty-hint{position:absolute;top:115px;left:30px;right:30px;text-align:center;pointer-events:none;font:25px 'Libre Caslon Display',Georgia;color:#8b977f}#empty-hint small{display:block;font:11px var(--font);margin-top:12px}.canvas-hint{text-align:center;font-size:9px;color:#94a088;padding-top:19px}.small-star{font-size:13px;padding-right:5px}.source-panel{background:#fafbf6;border-bottom:1px solid var(--line);padding:17px 24px 12px}.source-heading,.source-heading>div{display:flex;align-items:center;gap:10px}.source-heading{justify-content:space-between;margin-bottom:14px}.source-heading h2{font-size:11px}.source-heading button{font-size:10px;background:none;padding:5px 8px}.code-icon{font-size:14px;color:#9aab8e}textarea{resize:vertical;width:100%;min-height:77px;background:#f2f4ec;border:1px solid #e0e5d7;border-radius:5px;padding:14px;color:#526846;font:12px/1.7 ui-monospace,monospace}.source-footer{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#929c87;margin-top:7px}.source-footer button{padding:4px 0;border:0;background:none;font-size:10px;color:#6d825f}.statusbar{display:flex;align-items:center;gap:17px;height:33px;padding:0 24px;font-size:9px;border-top:1px solid var(--line);color:#8a9680;background:#f7f9f1}.statusbar>span:last-child{margin-left:auto}.inspector{border-left:1px solid var(--line);padding:26px 20px;background:#fafbf5}.inspector>h2{margin-bottom:24px}.inspector select{margin-bottom:22px}.divider{border-top:1px solid var(--line);margin:3px 0 23px}.sign-detail{text-align:center;display:flex;align-items:center;flex-direction:column;gap:9px;margin:0 0 17px}.selected-glyph{display:grid;place-items:center;background:#f0f2e9;border:1px solid var(--line);width:100%;height:109px;border-radius:6px}.sign-detail strong{font-size:12px}.sign-detail>span:not(:first-child){font-size:10px}.sign-detail .muted{line-height:1.5;max-height:45px;overflow:auto}.wide{width:100%;background:none;font-size:10px}.tip{background:#eef1e5;border:1px solid #e5e8d7;border-radius:6px;margin-top:30px;padding:18px 15px}.tip>span{font-size:7px;letter-spacing:1.3px;color:#8a967d}.tip h3{font:23px/1.13 'Libre Caslon Display',Georgia;margin:13px 0}.tip p{font-size:10px;color:#859178}.tip button{border:0;background:none;padding:5px 0 0;font-size:9px;color:#5e7751}.credits{background:none;border:0;font-size:8px;color:#98a08e;width:100%;padding-top:22px}dialog{border:1px solid var(--line);border-radius:12px;background:#fffefa;color:var(--ink);padding:30px;width:min(590px,92vw);box-shadow:0 20px 90px #18392c33}dialog::backdrop{background:#1c382955;backdrop-filter:blur(4px)}.modal-top{display:flex;justify-content:space-between;align-items:center}.modal-top button{border:0;background:none;font-size:22px;padding:0 4px}dialog h2{font:37px 'Libre Caslon Display',Georgia;margin:16px 0}dialog p{font-size:13px;color:#7d8878}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:27px 0}.guide-grid kbd{background:#edf1e5;border-radius:4px;padding:6px 10px;display:inline-block}.guide-grid h3{font-size:13px;margin:12px 0 0}.guide-grid p{font-size:11px}.export-choice{display:flex;flex-direction:column;width:100%;text-align:left;gap:8px;margin-top:12px;padding:17px}.export-choice strong{display:flex;justify-content:space-between;width:100%;font-weight:500}.export-choice strong span{color:#97a38a;font:11px monospace}.export-choice small{color:#8a9580;font-size:11px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(80px);background:var(--ink);color:white;box-shadow:0 4px 25px #19352722;border-radius:7px;padding:13px 24px;opacity:0;transition:.2s;z-index:10;max-width:90vw}#toast.show{transform:translateX(-50%);opacity:1}.error{color:#ad5241!important}@media(min-width:1600px){main{grid-template-columns:310px minmax(350px,1fr) 260px}.desk{padding:45px 60px}.paper{min-height:440px}}@media(max-width:1150px){main{grid-template-columns:255px minmax(350px,1fr)}.inspector{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:15px;align-items:center;border-top:1px solid var(--line);padding:20px}.inspector>h2{margin:0}.inspector .field-label{margin:0}.inspector select{width:150px;margin:0}.inspector .divider,.inspector .sign-detail,.inspector #favorite,.inspector .tip,.inspector .credits,.inspector h2:nth-of-type(2){display:none}.toolbar{padding:0 10px;gap:6px}.toolbar .tool-group{padding-right:5px}.toolbar button span{display:none}.header-right .engine{display:none}header{gap:50px}.title-row{gap:8px}.saved{display:none}}@media(max-width:700px){header{height:70px;padding:0 18px;gap:24px}nav{gap:18px}nav button{font-size:11px}.brand{font-size:30px}.brand small{font-size:6px}.brand-mark{width:32px;font-size:29px}.header-right{display:none}.document-bar{padding:18px;height:auto;gap:15px;flex-wrap:wrap}.eyebrow{font-size:8px}#title{font-size:27px}.doc-actions{width:100%}.doc-actions button{font-size:11px}.doc-actions .primary{margin-left:auto;padding:10px}.primary span{margin-left:5px}main{display:flex;flex-direction:column}.workspace{order:0}.library{order:1;border-top:1px solid var(--line);padding:20px}.inspector{order:2}.desk{min-height:330px;padding:20px 16px 16px}.paper{min-height:270px;padding:22px}.paper-rule{margin-bottom:20px}.paper-header{font-size:6px}.paper-bottom{padding-top:25px}.toolbar{height:50px;justify-content:space-between;gap:4px}.toolbar button{padding:5px}.zoom{gap:1px;font-size:9px}.source-panel{padding:16px}.source-heading .badge{display:none}.source-heading>div{gap:5px}.canvas-hint{font-size:8px}.sign-grid{grid-template-columns:repeat(6,1fr);max-height:240px}.library-tabs{margin-bottom:16px}.library-foot{margin-top:15px}.guide-grid{gap:17px}.inspector h2{width:100%}}
@media(max-width:1150px){.inspector .sign-detail{display:flex;flex-direction:row;margin:0;gap:10px}.inspector .sign-detail .selected-glyph,.inspector .sign-detail #selected-tags{display:none}.inspector #favorite{display:block;width:auto;margin-left:auto}}
nav .nav-link{display:flex;align-items:center;height:100%;padding:0 3px;text-decoration:none;font-weight:500;color:#7b877e}nav .nav-link.nav-active{color:var(--teal)}a.avatar{display:grid;place-items:center;text-decoration:none}a.credits{display:block;text-align:center;text-decoration:none}@media(max-width:700px){header{gap:16px}nav{gap:15px}nav .nav-link{font-size:11px}}
.phonetic-entry{margin-top:13px;border-top:1px solid var(--line);padding-top:15px}.phonetic-heading{display:flex;align-items:center;gap:12px;margin-bottom:10px}.phonetic-heading label{font-size:11px;font-weight:600}.phonetic-row{display:flex;gap:8px}.phonetic-row input{min-width:0;flex:1;border:1px solid #d9e1d2;border-radius:5px;background:#fffefa;padding:11px 12px;color:var(--ink);font-size:12px}.phonetic-row button{font-size:11px;padding:9px 14px;white-space:nowrap}.phonetic-examples{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:9px;color:#819176;margin-top:10px}.phonetic-examples button{background:#edf1e6;border:0;padding:5px 8px;font-size:10px}.phonetic-entry p{font-size:10px;color:#7a8870;margin:9px 0 0;line-height:1.65}#phonetic-results{display:flex;gap:7px;flex-wrap:wrap;max-height:165px;overflow:auto}#phonetic-results:not(:empty){margin-top:11px}#phonetic-results button{display:flex;align-items:center;gap:9px;padding:8px 10px;font-size:10px;min-height:47px;background:#fffefa}#phonetic-results button[aria-pressed="true"]{border-color:#659778;background:#eaf1e4;box-shadow:inset 0 0 0 1px #659778}#phonetic-results jsesh-text{max-width:60px;max-height:34px;overflow:hidden}@media(max-width:700px){.phonetic-heading .badge{font-size:7px}.phonetic-row input{font-size:16px;width:100px}.phonetic-row button{padding:8px 10px}.phonetic-entry p{font-size:10px}}
@media(max-width:700px){header{flex-wrap:wrap;height:auto;min-height:70px;padding-top:16px;padding-bottom:10px;gap:14px}header nav{width:100%;height:38px;justify-content:flex-start;gap:24px}header nav button,header nav .nav-link{font-size:11px}header .brand{margin-bottom:0}}
.mini-dictionary{margin-top:24px;padding-top:22px;border-top:1px solid var(--line);min-width:0}.mini-dictionary .badge{font-size:7px}.mini-intro{font-size:10px;color:var(--muted);margin:9px 0 13px}.mini-search-options{display:flex;gap:7px;margin-top:8px}.mini-search-options select{min-width:0;flex:1;font-size:10px;padding:8px}.mini-search-options button{font-size:10px;white-space:nowrap;padding:8px 10px;background:#edf3e8;color:var(--teal)}#mini-dictionary-status{font-size:10px;color:#7b8976;line-height:1.6;margin:11px 0}#mini-dictionary-results{max-height:390px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}#mini-dictionary-results:empty{display:none}.mini-entry{border:1px solid var(--line);background:#fbfcf6;border-radius:6px;padding:11px;margin-bottom:8px}.mini-entry-heading{display:flex;gap:8px;align-items:center;justify-content:space-between}.mini-entry h3{font-size:14px;color:var(--teal);margin:0;overflow-wrap:anywhere}.mini-entry button{font-size:9px;padding:5px 7px;flex-shrink:0}.mini-meaning{font-size:11px;margin:8px 0;line-height:1.6;overflow-wrap:anywhere}.mini-glyph{overflow:auto;max-width:100%;padding:3px 0 7px}.mini-glyph jsesh-text{display:block;width:max-content}.mini-codes{font:9px/1.6 ui-monospace,monospace;color:#7e8e72;overflow-wrap:anywhere;margin:3px 0 5px}.mini-entry small{font-size:8px;color:#8d9881}.mini-unavailable{font-size:10px;color:#967447}#mini-dictionary-full{display:inline-block;font-size:10px;margin-top:8px;text-underline-offset:3px}.mini-credit{font-size:8px;color:#909b87;margin:9px 0 0}.mini-credit a{color:inherit}.library{min-width:0}.mini-dictionary input{font-size:11px}@media(max-width:700px){.mini-dictionary input{font-size:16px}#mini-dictionary-results{max-height:360px}}
#read-selection{font-size:9px;padding:5px 8px;margin-left:7px;background:#f7f9f2;color:var(--teal)}#selection-dictionary{position:fixed;z-index:30;width:310px;max-width:calc(100vw - 24px);max-height:min(440px,calc(100dvh - 24px));overflow:auto;background:#fffefa;color:var(--ink);border:1px solid #c8d9bd;border-radius:10px;box-shadow:0 12px 38px #18392c29;padding:16px;line-height:1.5}#selection-dictionary[hidden]{display:none}.selection-popup-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.selection-popup-heading>span{font-size:8px;letter-spacing:1.6px;color:#7e9074;font-weight:600}.selection-popup-heading button{border:0;padding:0 4px;background:none;font-size:19px;line-height:1.3;color:#73846b}.selection-codes{font:10px/1.6 ui-monospace,monospace;color:#849477;overflow-wrap:anywhere;margin:8px 0}.selection-match-label{font-size:10px;color:#77896d;margin:10px 0}.selection-reading{border-top:1px solid #e5ebdf;padding:10px 0}.selection-field-label{display:block;font-size:8px;text-transform:uppercase;letter-spacing:1px;color:#8a977e}.selection-sound{display:block;font-size:19px;font-weight:500;color:var(--teal);margin:1px 0 7px;overflow-wrap:anywhere}.selection-meaning{font-size:12px;line-height:1.6;margin:3px 0 5px;overflow-wrap:anywhere}.selection-source{font-size:9px;color:#8c9980}.selection-message{font-size:12px;line-height:1.7;margin:13px 0;color:#6e7e66}.selection-footnote{font-size:9px;color:#8a967d;line-height:1.6;margin:12px 0 0}.selection-dictionary-link{display:inline-block;font-size:11px;text-underline-offset:3px;margin-top:8px}
header{gap:40px}header nav{gap:23px}.doc-actions{flex-wrap:wrap}.cloud-status{font-size:10px;color:#718568;padding:10px 24px;background:#f8faf3;border-top:1px solid var(--line)}.account-dialog{width:min(650px,94vw);max-height:88dvh;overflow:auto}.account-signin{display:inline-block;padding:12px 18px;border-radius:6px;background:var(--teal);color:white;text-decoration:none;font-size:13px}.account-note{font-size:11px;line-height:1.7}.account-identity{font-size:11px;overflow-wrap:anywhere}.profile-details{border:1px solid var(--line);padding:15px;border-radius:7px;margin:22px 0}.profile-details summary{cursor:pointer;font-size:12px;color:var(--teal)}#profile-form{display:grid;gap:8px;padding-top:16px}#profile-form label{font-size:11px;font-weight:500}#profile-form label span{color:var(--muted);font-weight:400}#profile-form input{border:1px solid var(--line);padding:10px;border-radius:5px;background:#fbfcf7;color:var(--ink)}#profile-form textarea{font:12px var(--font);min-height:65px}#profile-submit{justify-self:start;margin-top:5px}.account-library-heading{display:flex;justify-content:space-between;align-items:center}.account-library-heading h3{font-size:15px;font-weight:500}.account-library-heading button{font-size:10px;padding:6px 10px}#library-status,#account-status{font-size:11px;line-height:1.7}#account-status{color:var(--teal)}#saved-inscriptions{max-height:300px;overflow:auto}.saved-inscription{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:6px;padding:14px;margin:8px 0;gap:15px}.saved-inscription strong{display:block;font-size:13px;font-weight:500;overflow-wrap:anywhere}.saved-inscription small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.saved-inscription button{font-size:11px;flex-shrink:0}#cloud-copy{font-size:11px;margin:13px 0 0}.account-confirm-actions{display:flex;flex-wrap:wrap;gap:8px}@media(max-width:1000px){header{gap:25px}header nav{gap:16px}.header-right{display:none}}@media(max-width:700px){header nav{gap:15px;flex-wrap:wrap;height:auto;min-height:38px}.doc-actions .primary{margin-left:0}.doc-actions button{flex:1;white-space:nowrap}.account-dialog{padding:22px}#profile-form input,#profile-form textarea{font-size:16px}}

/* Three complementary reading forms, shared by editor and dictionary. */
.reading-forms{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:12px;margin:12px 0 16px}.reading-forms div{min-width:0}.reading-forms dt{font-size:9px;color:#687b63;line-height:1.5;margin-bottom:3px}.reading-forms dd{margin:0;font:18px/1.5 Georgia,'Times New Roman',serif;color:var(--teal);overflow-wrap:anywhere}.reading-forms dd::selection{background:#cdddbe}.reading-forms-compact{grid-template-columns:1fr;gap:6px;margin:9px 0}.reading-forms-compact dd{font-size:15px}.reading-entry{border-top:1px solid var(--line);padding-top:15px;margin-top:16px}.reading-entry summary{cursor:pointer;font-size:12px;font-weight:600;color:var(--teal)}.reading-entry summary span{display:block;margin:5px 0 13px;font-size:8px;letter-spacing:1px;font-weight:400;color:#73876a}.reading-entry form>label{display:block;font-size:10px;margin:12px 0 8px}.reading-entry p{font-size:11px;line-height:1.65;color:#61765b}.reading-keyboard{display:flex;gap:5px;flex-wrap:wrap;margin-top:9px}.reading-keyboard button{font:18px Georgia,serif;padding:5px 10px;min-width:33px}.reading-choice{border:1px solid var(--line);border-radius:7px;background:#fffefa;padding:15px;margin:10px 0}.reading-choice jsesh-text{display:block;max-width:100%;overflow:auto;margin:10px 0}.reading-choice small{font-size:9px;color:#788b6f}.reading-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.reading-actions button{font-size:10px;padding:7px 9px}.reading-actions button:first-child{background:var(--teal);color:white}.reading-entry #reading-results{max-height:400px;overflow:auto;overscroll-behavior:contain}.reading-entry #reading-results>a{font-size:11px;display:inline-block;margin:9px 0}.reading-entry #reading-results:empty{display:none}@media(max-width:700px){.reading-forms{grid-template-columns:1fr;gap:8px}.reading-entry form>label{line-height:1.6}.reading-keyboard button{min-height:36px}}
.source-spelling,.source-excerpt{position:relative;overflow:hidden;background:white;isolation:isolate}.source-spelling{width:180px;max-width:100%}.source-excerpt{width:100%;margin:12px 0}.source-spelling img,.source-excerpt img{position:absolute;max-width:none;height:auto;display:block}.source-note{font-size:12px;color:var(--muted,#697066);line-height:1.5}.source-excerpt img{pointer-events:none}

#ink-toggle{font:11px var(--font);display:flex;align-items:center;gap:5px}#ink-preview{display:inline-block;width:13px;height:13px;background:#000;border-radius:50%;border:1px solid #0002}.ink-panel{border-bottom:1px solid var(--line);background:#fafbf5;padding:15px 20px}.ink-heading{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:12px}.ink-heading span,.ink-panel p{font-size:11px;color:#6b7866}.ink-panel p{margin:10px 0 0}.ink-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:12px}.ink-swatches{display:flex;gap:6px}.ink-swatch{width:26px;height:26px;padding:0;border:3px solid #fafbf5;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 1px #bdc8b8}.ink-swatch[aria-pressed="true"]{outline:2px solid #345d48;outline-offset:2px}.ink-custom-label{display:flex;align-items:center;gap:7px;font-size:11px}#ink-custom{width:32px;height:30px;border:1px solid var(--line);border-radius:4px;padding:2px;background:white}#ink-hex{width:85px;border:1px solid var(--line);border-radius:4px;padding:7px;background:white;font:12px monospace}.ink-controls>button{font-size:11px;padding:7px 10px}#ink-selection{background:#e7eede}.toolbar{height:auto;min-height:57px;flex-wrap:wrap;padding-top:7px;padding-bottom:7px}

/* Keep the expanded navigation usable on narrow screens. */
@media(max-width:1100px){header{gap:28px}header nav{gap:18px}header .engine{display:none}}
@media(max-width:700px){header nav{height:auto;min-height:38px;flex-wrap:wrap;gap:8px 18px}header nav button,header nav .nav-link{height:34px;white-space:nowrap}}

/* Text is part of the composition; controls live outside the paper. */
.paper-text-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#fafbf5;border-bottom:1px solid var(--line);padding:10px 18px;font-size:11px}.paper-text-tools>span{color:var(--muted);margin-right:5px}.paper-text-tools button{font-size:11px;padding:6px 9px;background:transparent}.paper-text-tools label{display:flex;align-items:center;gap:7px;margin-left:auto;font-size:10px;color:var(--muted)}.paper-text-tools select{width:auto;padding:6px;font-size:10px}
.paper{background:white}.paper-composition{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:12px}.paper-glyphs{min-width:0;position:relative}.paper-glyphs #empty-hint{top:16px;left:0;right:0}.paper-glyphs:has(#empty-hint:not([hidden])){min-height:100px}.paper-glyphs jsesh-editor{min-width:0;--jsesh-editor-min-height:1px}.paper-notes{min-width:0;border:0;padding:0;margin:0}.paper-notes textarea{display:block;width:100%;background:transparent;border:0;border-radius:0;margin:0;padding:0;font:20px/1.5 var(--font);color:#151515;min-height:30px;resize:none;overflow:hidden;white-space:pre-wrap;outline:none}.paper-notes textarea[hidden]{display:none}.paper-notes textarea+textarea:not([hidden]){margin-top:6px}.paper-notes textarea[hidden]+textarea{margin-top:0}.paper-notes #notes-transliteration{font-style:italic}.paper-notes textarea::placeholder{color:#9aa48f;font:15px/2 var(--font)}.paper-notes textarea:focus{outline:none;box-shadow:-2px 0 0 #7da794;padding-left:7px;margin-left:-7px;width:calc(100% + 7px)}.paper-composition[data-notes-placement="beside"]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}.paper-bottom{padding-top:26px}
@media(max-width:700px){.paper-composition[data-notes-placement="beside"]{gap:12px}.paper-notes textarea{font-size:18px}.paper-text-tools{padding:10px 16px}.paper-text-tools>span{display:none}}

.composition-tools{padding:12px 18px;background:#fafbf5;border-bottom:1px solid var(--line)}.composition-tools>summary{cursor:pointer;font-size:12px;font-weight:600}.composition-controls{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:15px}.composition-controls fieldset{display:flex;flex-wrap:wrap;align-items:end;gap:12px;border:1px solid var(--line);border-radius:6px;padding:14px;min-width:0}.composition-controls legend{font-size:11px;color:var(--teal);padding:0 6px}.composition-controls label{display:flex;flex-direction:column;gap:6px;font-size:10px;min-width:85px;flex:1}.composition-controls input,.composition-controls select{width:100%;min-width:0;max-width:180px;border:1px solid var(--line);padding:7px;background:white;border-radius:4px;height:34px}.composition-controls input[type=color]{padding:3px}.composition-controls button{font-size:10px;padding:7px 9px}.composition-controls p{margin:0;color:var(--muted);font-size:10px;flex-basis:100%}.latin-buttons{display:flex;gap:5px;flex-wrap:wrap;flex-basis:100%}.latin-buttons [aria-pressed=true]{background:#dcebdc;border-color:#7da794}.paper-glyphs{overflow-x:auto}.paper-glyphs #editor{transform-origin:top left}.paper-glyphs #glyph-transform{min-width:0}.paper-notes #notes-transliteration{font-style:inherit}@media(max-width:1100px){.composition-controls{grid-template-columns:1fr}}

.single-toolbar{padding:12px 24px;border-bottom:1px solid var(--line,#dce1d5);display:flex;gap:16px;align-items:center}.single-toolbar [aria-pressed=true]{background:#e0edf8;border-color:#287bcb;color:#174d7f}.single-panel{padding:16px 24px;background:#f6f9fb;border-bottom:1px solid #d6e2ec}.single-panel[hidden]{display:none}.single-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.single-panel p{font-size:13px;line-height:1.6;color:#506477;margin:10px 0}.single-panel fieldset{display:flex;flex-wrap:wrap;gap:10px;border:0;padding:0;margin:12px 0}.single-panel label{display:flex;flex-direction:column;gap:6px;font-size:12px;flex:1 1 100px}.single-panel input{width:100%;max-width:150px;box-sizing:border-box;min-height:36px;padding:6px;border:1px solid #d2daca;border-radius:5px}.single-panel input[type=color]{height:36px;padding:3px}.single-panel button{font-size:13px}.single-panel fieldset:disabled{opacity:.5}

.paper-glyphs{padding:7px 7px 12px;margin:-7px -7px -12px}

.selection-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.selection-actions label{display:flex;flex-direction:row;align-items:center;flex:0 1 auto}.selection-actions input{width:16px;min-height:16px;margin:0}#selection-sizing:empty{display:none}

.paper-notes .rich-note{display:block;width:100%;min-width:0;min-height:30px;outline:none;border:0;background:transparent;padding:0;margin:0;font:20px/1.5 Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal}.paper-notes .rich-note[hidden]{display:none}.paper-notes .rich-note:not([hidden])+.rich-note{margin-top:6px}.paper-notes .rich-note:empty::before{content:attr(data-placeholder);color:#9aa48f;pointer-events:none}.paper-notes .rich-note:focus{box-shadow:-2px 0 0 #7da794}.paper-notes .rich-note::selection,.paper-notes .rich-note *::selection{background:#2864a5;color:white}.latin-buttons [aria-pressed=mixed]{background:repeating-linear-gradient(135deg,#dcebdc,#dcebdc 4px,#fafbf5 4px,#fafbf5 8px)}
.canvas-size-tools{display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap;padding:12px 18px;background:#fafbf5;border-bottom:1px solid var(--line);font-size:11px}.canvas-size-tools label{display:flex;gap:12px;align-items:center;font-weight:600;min-width:0}.canvas-size-tools select{width:360px;max-width:100%;padding:8px;font-size:11px}.canvas-size-tools>span{color:var(--teal);font-variant-numeric:tabular-nums}.canvas-size-tools p{flex-basis:100%;margin:0;color:var(--muted);font-size:10px}.canvas-size-tools #canvas-overflow{color:#956027}.canvas-size-tools button{font-size:10px;padding:7px 10px}.canvas-export-note{padding:10px 12px;border:1px solid var(--line);border-radius:5px;background:#f4f6ee;font-size:12px}.paper-stage{width:100%;position:relative}.paper-stage[data-fixed=true]{margin:0 auto}.paper.paper-preset{position:absolute;top:0;left:0;min-height:0;max-width:none;display:block;padding:16px;border:0;outline:1px solid #e2e3d8;transform-origin:top left;overflow:hidden}.paper-preset>.paper-header,.paper-preset>.paper-rule,.paper-preset>.paper-bottom{display:none}.paper-preset .paper-composition{gap:12px}.paper-preset .paper-composition[data-notes-placement=beside]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.paper-preset .paper-glyphs{margin:0;padding:0;overflow:visible}.paper-preset .paper-glyphs:has(#empty-hint:not([hidden])){min-height:1px}.paper-preset #empty-hint{display:none}.paper-preset .rich-note:empty:not(:focus)::before{content:none}.canvas-size-tools [hidden]{display:none}@media(max-width:700px){.canvas-size-tools label{flex-wrap:wrap;gap:7px;width:100%}.canvas-size-tools select{width:100%}}

/* Responsive design tools: docked on wide screens, a non-modal drawer on smaller ones. */
@media(min-width:1151px){
 main{grid-template-columns:255px minmax(350px,1fr) 320px}
 body:not(.design-panel-open) main{grid-template-columns:255px minmax(350px,1fr)}
 .inspector{position:relative;align-self:stretch;padding:0;min-width:0}
 .design-panel-inner{position:sticky;top:0;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding-bottom:72px}
}
.inspector[hidden]{display:none!important}
.design-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:#f1f4eb;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:2}
.design-panel-heading h2{margin:0;font-size:14px}
.design-panel-heading button{font-size:22px;line-height:1;padding:5px 10px;background:transparent}
.design-toggle{position:fixed;right:18px;bottom:18px;z-index:35;background:var(--teal);border-color:var(--teal);color:white;box-shadow:0 4px 20px #19352730;display:flex;gap:8px;align-items:center;font-size:13px;padding:12px 16px;border-radius:24px}
.design-toggle:hover{background:#194e45}
.inspector .single-toolbar{padding:14px 16px;flex-wrap:wrap;gap:8px}
.inspector #single-feedback{font-size:11px;line-height:1.5}
.inspector .single-panel{padding:14px 16px}
.inspector .single-panel p{font-size:11px}
.inspector .single-panel button{font-size:11px;padding:7px 9px}
.inspector .single-heading{align-items:start;flex-direction:column;gap:8px}
.inspector .single-panel label{font-size:10px;flex-basis:100px}
.inspector .single-panel .selection-actions label{flex-basis:auto}
.inspector .single-panel input{max-width:100%}
.inspector .composition-tools{padding:14px 16px}
.inspector .composition-controls{grid-template-columns:minmax(0,1fr);gap:14px}
.inspector .composition-controls fieldset{padding:10px;gap:10px}
.inspector .composition-controls label{min-width:85px}
.inspector .composition-controls input,.inspector .composition-controls select{max-width:100%}
.inspector select{width:100%;margin:0;min-width:0}
.inspector .paper-text-tools{padding:14px 16px;gap:8px}
.inspector .paper-text-tools>span{display:block;width:100%;color:var(--ink);font-weight:600}
.inspector .paper-text-tools label{margin:4px 0 0;width:100%;flex-direction:column;align-items:start}
.inspector .canvas-size-tools{padding:14px 16px;gap:10px;width:100%;display:flex}
.inspector .canvas-size-tools label{display:flex;flex-direction:column;align-items:start;gap:8px;width:100%}
.inspector .canvas-size-tools select{width:100%;text-overflow:ellipsis}
.inspector .canvas-size-tools p{font-size:11px}
.inscription-settings{padding:14px 16px}
.inscription-settings>summary{font-size:12px;font-weight:600;cursor:pointer;line-height:1.6}
.inscription-settings-content{padding-top:20px}
.inscription-settings-content>h2{margin:0 0 14px}
.inscription-settings-content .field-label{margin:12px 0 8px}
.inscription-settings-content .divider{margin:20px 0}
@media(max-width:1150px){
 .inspector{position:fixed;display:block;top:12px;right:12px;bottom:74px;width:320px;max-width:calc(100vw - 48px);padding:0;z-index:34;border:1px solid #ced8c7;border-radius:12px;box-shadow:0 10px 45px #173b2e30;overflow:hidden;background:#fafbf5}
 .design-panel-inner{height:100%;overflow-y:auto;overscroll-behavior:contain;padding-bottom:16px}
 .inspector .sign-detail{display:flex;flex-direction:column;margin:0 0 17px;gap:9px}
 .inspector .sign-detail .selected-glyph{display:grid}
 .inspector .sign-detail #selected-tags,.inspector #favorite,.inspector .tip,.inspector .credits,.inspector .divider{display:block}
 .inspector #favorite{width:100%;margin:0}
 .inspector h2{width:auto}
}
@media(max-width:700px){.design-toggle{bottom:12px;right:12px}.inspector{bottom:68px}.inspector input,.inspector select{font-size:16px}}

#export-dialog{max-height:90dvh;overflow:auto}#export-progress:empty{display:none}#export-progress{color:var(--teal);font-size:12px}
