/* Shared 4px source corners rendered at 2x; Japanese always uses smooth glyphs. */
html body #vocabulary-dialog[data-university-library][data-study-view=verbs]{overflow:hidden!important}
html body #vocabulary-dialog[data-university-library][data-study-view=verbs] .study-shell{display:flex!important;flex-direction:column!important;width:100%!important;max-width:1420px!important;height:100dvh!important;min-height:0!important;margin:auto!important;padding-inline:clamp(12px,3vw,36px)!important;padding-top:calc(var(--learning-height) + env(safe-area-inset-top,0px) + 12px)!important;overflow:hidden!important}
html body #vocabulary-dialog[data-university-library][data-study-view=verbs] #study-section-title{display:none!important}
html body #vocabulary-dialog[data-university-library][data-study-view=verbs] #local-status:empty{display:none!important}
html body #vocabulary-dialog[data-university-library] #verbs-view{--verb-ink:#49345f;--verb-muted:#786e81;--verb-paper:#fff9ed;--verb-lilac:#eee5f8;--verb-blue:#d1ecfc;--verb-jp:'Noto Sans JP','Yu Gothic',Meiryo,system-ui,sans-serif;--verb-ui:UniversityActions,UniversityLatin,var(--verb-jp);display:flex;flex:1;flex-direction:column;gap:12px;min-width:0;min-height:0;width:100%;max-width:none;margin:0;padding:12px 0 0;font:19px/1.3 var(--verb-ui);color:var(--verb-ink);text-shadow:none;box-sizing:border-box}
html body #vocabulary-dialog[data-university-library] #verbs-view[hidden]{display:none!important}
html body #verbs-view *,html body .verb-detail *{box-sizing:border-box}
html body #verbs-view [hidden]{display:none!important}
html body #verbs-view :is(h1,h2,p){margin:0;padding:0;color:inherit;font-family:inherit;font-weight:400;text-shadow:none;-webkit-text-stroke:0;line-height:1.3}
html body #verbs-view h1{font-size:clamp(24px,3vw,34px);line-height:1}
html body #verbs-view h2{font-size:26px}
html body #verbs-view .verb-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px}
html body #verbs-view .verb-count{color:#526e64;font-family:UniversityLatin,var(--verb-jp);font-size:21px}
html body #verbs-view .verb-toolbar{display:flex;gap:12px;align-items:end}
html body #verbs-view :is(input[type=search],select){min-width:0;max-width:100%;height:42px;border:2px solid #b4a0c5;border-radius:0;background:var(--verb-paper);padding:5px 10px;color:var(--verb-ink);font:16px/1.2 system-ui,var(--verb-jp);box-shadow:none;text-shadow:none}
html body #verbs-view input[type=search]{width:100%;font-family:UniversityLatin,var(--verb-jp);font-size:18px}
html body #verbs-view select{font-family:var(--verb-ui);font-size:19px}
html body #verbs-view .verb-select{display:flex;align-items:center;gap:8px;margin:0}
html body #verbs-view .verb-select>span{font-size:18px}
html body #verbs-view .verb-options{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
html body #verbs-view .verb-switch{display:flex;gap:4px}
html body #verbs-view .verb-table-tools{display:flex;align-items:center;gap:14px}
html body #verbs-view .verb-romaji-toggle{display:flex;align-items:center;gap:8px;margin:0;padding:0;border:0;min-height:42px;font:20px/1.2 UniversityLatin,var(--verb-jp);cursor:pointer;white-space:nowrap}
html body #verbs-view .verb-romaji-toggle input:focus-visible{outline:3px solid #735295;outline-offset:3px}
html body #verbs-view .verb-button,html body #verbs-view a.verb-button{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:42px;min-width:44px;padding:8px 14px;border:0;border-image:url('/assets/interface-v2/pastel-ui/lavender-normal.png') 4 fill stretch;border-image-width:8px;background:none;border-radius:0;color:var(--verb-ink);font:20px/1.1 var(--verb-ui);text-decoration:none;box-shadow:none;cursor:pointer;image-rendering:pixelated;transform:none}
html body #verbs-view .verb-button[aria-pressed=true]{border-image-source:url('/assets/interface-v2/pastel-ui/mint-normal.png')}
html body #verbs-view .verb-button[data-tone=blue]{border-image-source:url('/assets/interface-v2/pastel-ui/blue-normal.png')}
html body #verbs-view .verb-button:active{translate:0 2px}
html body #verbs-view .verb-button:disabled{opacity:.45;cursor:default}
html body #verbs-view .verb-check{display:flex;align-items:center;gap:6px;min-height:40px;white-space:nowrap;margin:0;font-size:18px}
html body #verbs-view .verb-check input{accent-color:#705494;width:17px;height:17px;margin:0}
html body #verbs-view .verb-summary,html body #verbs-view .verb-status{font:14px/1.3 system-ui,var(--verb-jp);color:var(--verb-muted)}
html body #verbs-view .verb-status:empty,html body #verbs-view .verb-summary:empty{display:none}
html body #verbs-view .verb-status{color:#755226}
html body #verbs-view .verb-development{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;background:#f7e9bd;padding:6px 12px;border-left:4px solid #b88c35;font-size:18px}
html body #verbs-view .verb-development label{display:flex;align-items:center;gap:8px;margin:0}
html body #verbs-view .verb-dev-label{white-space:nowrap;font-size:16px}
html body #verbs-view .verb-development select{height:34px;font-size:18px}
html body #verbs-view .verb-development>span{font:12px/1.3 system-ui,sans-serif}
html body #verbs-view .verb-content{display:flex;flex:1;min-height:0;min-width:0;overflow:hidden;border:0;border-image:url('/assets/interface-v2/pastel-ui/paper-normal.png') 4 fill stretch;border-image-width:8px;padding:8px;background:none}
html body #verbs-view .verb-grid-scroll{width:100%;height:100%;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b39ac9 #f2eadf;background:var(--verb-paper);isolation:isolate}
html body #verbs-view .verb-grid-scroll{touch-action:pan-x pan-y}
@media(hover:hover) and (pointer:fine){html body #verbs-view .verb-grid-scroll{overflow:hidden;overscroll-behavior:auto}}
html body #verbs-view .verb-romaji{font:400 22px/1.5 UniversityLatin,system-ui,sans-serif;white-space:nowrap;color:inherit}
html body #verbs-view .verb-name .verb-romaji{font-size:19px}
html body #verbs-view table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;table-layout:fixed;margin:0;background:var(--verb-paper)}
html body #verbs-view :is(th,td){padding:0;border:0;border-bottom:1px solid #e0d8d1;text-align:center;vertical-align:middle;background:var(--verb-paper);font-weight:400;color:var(--verb-ink);min-width:190px;max-width:350px}
html body #verbs-view tbody tr:nth-child(even) :is(td,th){background:#f6f0e8}
html body #verbs-view thead th{position:sticky;top:0;z-index:3;background:#e9def3;box-shadow:0 2px #bba6cc;height:72px}
html body #verbs-view tr>:first-child{position:sticky;left:0;z-index:2;min-width:164px;width:164px;max-width:164px;box-shadow:2px 0 #cbbad4}
html body #verbs-view thead tr>:first-child{z-index:4;background:#e3d3ef}
html body #verbs-view .verb-form-heading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;min-height:60px;margin:0;padding:10px 14px;border:0;border-radius:0;background:none;box-shadow:none;color:inherit;font:20px/1.2 var(--verb-ui);cursor:pointer;text-shadow:none;transform:none;white-space:normal}
html body #verbs-view .verb-form-heading small{font-size:13px;color:#807489}
html body #verbs-view :is(thead th,.verb-form-heading){font-family:UniversityLatin,var(--verb-jp)}
html body #verbs-view th[data-locked=true]{color:#81768a;background:#ede7ef}
html body #verbs-view .verb-cell{display:block;width:100%;min-height:88px;padding:20px 20px 14px;margin:0;border:0;border-radius:0;background:none;box-shadow:none;text-shadow:none;transform:none;color:#3e3450;cursor:pointer;text-align:center;white-space:nowrap}
html body #verbs-view .verb-cell:hover,html body #verbs-view .verb-name:hover{background:#e8f2ee}
html body #verbs-view .verb-cell:focus-visible,html body #verbs-view .verb-name:focus-visible{outline:3px solid #735295;outline-offset:-3px}
html body #verbs-view .verb-name{position:relative;display:flex;align-items:flex-start;flex-direction:column;justify-content:center;gap:5px;width:100%;min-height:96px;max-width:100%;margin:0;padding:16px 14px 12px;border:0;border-radius:0;background:none;color:inherit;box-shadow:none;text-shadow:none;transform:none;text-align:left;cursor:pointer}
html body #verbs-view .verb-name small{font:14px/1.3 UniversityLatin,system-ui,sans-serif;text-align:left;overflow-wrap:anywhere;white-space:normal}
html body #verbs-view .verb-name[aria-disabled=true]{color:#8a818a;cursor:default}
html body #verbs-view .verb-lock-label{font:12px/1 var(--verb-ui);color:#887d89}
html body #verbs-view .verb-favorite-marker{position:absolute;right:10px;top:10px;color:#a87822}
html body #verbs-view .verb-unavailable{display:block;min-width:190px;padding:24px 14px;color:#9a8b9f;letter-spacing:.15em;font:20px/1.3 var(--verb-ui)}
html body #verbs-view .verb-unavailable[data-state=missing],html body #verbs-view .verb-unavailable[data-state=unreviewed]{letter-spacing:0;color:#85622b}
html body #verbs-view .uni-jp{font:400 25px/1.5 var(--verb-jp);color:inherit;letter-spacing:normal;word-break:normal;white-space:nowrap}
html body #verbs-view .uni-jp ruby{display:inline-flex;position:relative;line-height:1.4}
html body #verbs-view .uni-jp rt{display:contents;font:inherit}
html body #verbs-view .uni-jp .uni-ruby-reading{position:absolute;left:50%;bottom:calc(100% - .12em);transform:translateX(-50%);font:12px/1 system-ui,sans-serif;white-space:nowrap;color:#786781}
html body #verbs-view .verb-compare{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
html body #verbs-view .verb-empty{align-self:center;text-align:center;width:100%;padding:32px 18px;line-height:1.6;font-size:21px}
html body #verbs-view .verb-preparation{max-width:660px;margin:auto;display:flex;flex-direction:column;gap:20px;align-items:center}
html body #verbs-view .verb-card-scroll{overflow:auto;width:100%;padding:12px;background:var(--verb-paper)}
html body #verbs-view .verb-card-navigation{display:flex;justify-content:space-between;gap:10px}
html body #verbs-view .verb-card-navigation select{flex:1;font-family:var(--verb-jp);font-size:16px}
html body #verbs-view .verb-card-forms{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
html body #verbs-view .verb-card-forms section{background:#f2eaf7;border-bottom:2px solid #d6c4e2;min-width:0;overflow:auto}
html body #verbs-view .verb-card-forms .verb-form-heading{min-height:44px;font-size:19px}
html body #verbs-view .verb-card-forms .verb-cell{min-height:74px;padding-top:24px}
html body #verbs-view .verb-detail{position:fixed;inset:0;max-width:calc(100vw - 24px);width:520px;max-height:calc(100dvh - 28px);margin:auto;padding:52px 24px 24px;border:0;border-image:url('/assets/interface-v2/pastel-ui/paper-normal.png') 4 fill stretch;border-image-width:8px;background:none;box-shadow:8px 8px 0 #59436825;border-radius:0;color:var(--verb-ink);font:20px/1.5 var(--verb-ui);overflow:auto;image-rendering:pixelated}
html body #verbs-view .verb-detail::backdrop{background:#2b203b66}
html body #verbs-view .verb-detail-body{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center;min-width:0}
html body #verbs-view .verb-detail .verb-detail-jp{padding-top:16px;max-width:100%;overflow-x:auto}
html body #verbs-view .verb-detail-jp .uni-jp{font-size:32px}
html body #verbs-view .verb-detail-jp .uni-ruby-reading{font-size:15px}
html body #verbs-view .verb-title-formula{display:block;white-space:nowrap;font:20px/1.5 var(--verb-jp);margin-top:4px}
html body #verbs-view .verb-reading{font:17px/1.5 var(--verb-jp)}
html body #verbs-view .verb-detail .verb-description{font:15px/1.5 system-ui,var(--verb-jp);color:#76637e}
html body #verbs-view .verb-transformation{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:center;max-width:100%}
html body #verbs-view .verb-transformation .uni-jp{font-size:19px;white-space:normal;overflow-wrap:anywhere}
html body #verbs-view .verb-detail-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
html body #verbs-view .verb-button img{width:24px;height:24px;object-fit:contain}
html body #verbs-view .verb-close{position:absolute;top:4px;left:4px;width:48px;height:48px;min-height:48px;padding:10px;background:none;border:0;box-shadow:none;cursor:pointer}
html body #verbs-view .verb-close img{width:28px;height:28px;image-rendering:pixelated}
html body #verbs-view .verb-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}
html body #verbs-tab .verb-nav-caption{position:absolute;inset:auto -3px 1px;display:block;text-align:center;font:clamp(11px,2.8vw,18px)/1 UniversityActions,system-ui,sans-serif;color:#443155;z-index:1;background:#ecc9c1;white-space:nowrap;overflow-wrap:normal;word-break:normal}
html body #verbs-view .verb-filter-controls{display:flex;flex-direction:column;gap:16px}
html body #verbs-view .verb-filter-controls .verb-select{display:grid;grid-template-columns:80px minmax(0,1fr)}
html body #verbs-view .verb-filter-controls .verb-select>span{display:block}
html body #verbs-view .verb-filter-controls .verb-check input{appearance:auto;background:none;border:initial;border-radius:initial}
/* Compact details share the Arena's bottom entry and pull-to-dismiss motion.
   Keep the heading outside the scroll area, even on short landscape screens. */
html body #verbs-view dialog.verb-detail-sheet{inset:auto 0 0;width:min(100%,560px);max-width:100%;height:auto;max-height:calc(100dvh - env(safe-area-inset-top,0px) - 12px);margin:0 auto;padding:0;border:0;border-image:none;border-radius:18px 18px 0 0;background:var(--verb-paper);box-shadow:0 -8px 28px #0002;overflow:hidden;touch-action:none;user-select:none;overscroll-behavior:contain;}
html body #verbs-view dialog.verb-detail-sheet[open]{display:flex;flex-direction:column}
html body #verbs-view .verb-detail-header{position:relative;flex:none;padding:22px 52px 12px;min-height:62px;text-align:center}
html body #verbs-view .verb-detail-header::before{content:'';position:absolute;top:8px;left:calc(50% - 18px);width:36px;height:4px;border-radius:4px;background:currentColor;opacity:.25}
html body #verbs-view .verb-detail-header h2{font-size:22px;line-height:1.1;text-transform:uppercase;overflow-wrap:anywhere}
html body #verbs-view .verb-detail-header .verb-title-formula{font-size:18px;white-space:normal;text-transform:none}
html body #verbs-view .verb-detail-header .verb-close{top:12px;left:2px}
html body #verbs-view .verb-detail-sheet .verb-detail-body{flex:0 1 auto;min-height:0;gap:10px;padding:12px 20px calc(20px + env(safe-area-inset-bottom,0px));overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;font-size:20px;line-height:1.3}
html body #verbs-view .verb-detail-sheet .verb-detail-jp{flex:none;padding-top:16px;overflow:visible}
html body #verbs-view .verb-detail-sheet .verb-detail-jp .uni-jp{font-size:30px}
html body #verbs-view .verb-detail-sheet .verb-detail-actions{gap:10px;margin-top:4px}
html body #verbs-view .verb-detail-sheet .verb-transformation>span:not(.uni-jp){font-family:var(--verb-jp)}
html body #verbs-view .verb-detail-sheet .verb-audio-status:empty{display:none}
html body .main-navigation .verb-dex-access>span{display:none!important}
@media(max-width:699px){
 html body #vocabulary-dialog[data-university-library] #verbs-view{gap:8px}
 html body #verbs-view .verb-toolbar{grid-template-columns:1fr 1fr;gap:6px}
 html body #verbs-view .verb-toolbar>input{grid-column:1/-1}
 html body #verbs-view .verb-toolbar .verb-select>span{display:none}
 html body #verbs-view .verb-toolbar select{width:100%}
 html body #verbs-view .verb-options{gap:4px 10px}
 html body #verbs-view .verb-options .verb-select>span{display:none}
 html body #verbs-view .verb-button{padding:8px 10px;font-size:18px}
 html body #verbs-view .verb-check{font-size:16px;min-height:28px}
 html body #verbs-view .verb-table-tools{gap:8px}
 html body #verbs-view .verb-romaji-toggle{gap:6px;font-size:18px}
 html body #verbs-view .verb-development>span{display:none}
 html body #verbs-view .verb-development{padding:4px 6px}
 html body #verbs-view .verb-development select{max-width:190px}
 html body #verbs-view .verb-development label{min-width:0;max-width:100%}
 html body #verbs-view .verb-development select{flex:1;min-width:0}
 html body #verbs-view .verb-count{font-size:18px}
 html body #verbs-view .verb-summary{font-size:12px}
 html body #verbs-view tr>:first-child{min-width:116px;width:116px;max-width:116px}
 html body #verbs-view .verb-name{padding:16px 9px 10px;min-height:88px}
 html body #verbs-view .verb-name small{font-size:12px}
 html body #verbs-view .uni-jp{font-size:22px}
 html body #verbs-view :is(th,td){min-width:166px}
 html body #verbs-view .verb-cell{padding-inline:14px}
 html body #verbs-view .verb-form-heading{font-size:18px}
 html body #verbs-view thead th{height:62px}
 html body #verbs-view .verb-detail{padding:52px 16px 18px}
 html body #verbs-view .verb-detail-jp .uni-jp{font-size:25px}
}
@media(max-height:650px) and (orientation:landscape){
 html body:has(#vocabulary-dialog[data-university-library][open][data-study-view=verbs]){--main-key:44px;--main-height:60px;--learning-height:60px}
 html body #vocabulary-dialog[data-university-library][data-study-view=verbs] #verbs-view{position:relative}
 html body #verbs-view .verb-heading{width:54%;height:32px;flex-wrap:nowrap}
 html body #verbs-view .verb-heading .verb-count{font-size:15px;white-space:nowrap}
 html body #vocabulary-dialog[data-university-library] #verbs-view{gap:6px;padding-top:4px}
 html body #verbs-view .verb-heading h1{font-size:22px}
 html body #verbs-view .verb-development{position:absolute;right:0;top:42px;z-index:5;max-width:44%;padding:0 4px;font-size:0}
 html body #verbs-view .verb-development>span{display:none}
 html body #verbs-view .verb-development select{font-size:16px;height:30px}
 html body #verbs-view .verb-dev-label{font-size:0}
 html body #verbs-view .verb-dev-label:after{content:'DEV';font-size:12px}
 html body #verbs-view .verb-toolbar{position:absolute;top:4px;right:0;width:44%;display:flex;gap:8px}
 html body #verbs-view .verb-toolbar>input{flex:1;width:100px}
 html body #verbs-view .verb-toolbar .verb-select>span{display:none}
 html body #verbs-view .verb-options{flex-wrap:nowrap;gap:8px}
 html body #verbs-view .verb-romaji-toggle{min-height:32px;font-size:16px}
 html body #verbs-view :is(.verb-button,input[type=search],select){min-height:32px;height:32px;font-size:16px;padding-block:4px}
 html body #verbs-view .verb-check{min-height:28px;font-size:15px}
 html body #verbs-view .verb-summary{display:none}
 html body #verbs-view thead th{height:48px}
 html body #verbs-view .verb-form-heading{min-height:48px;font-size:17px;padding-block:4px}
 html body #verbs-view .verb-name,html body #verbs-view .verb-cell{min-height:70px}
}
@media(max-height:650px) and (orientation:portrait){html body #verbs-view .verb-summary{display:none}}
@media(max-height:360px) and (orientation:landscape){
 html body #vocabulary-dialog[data-university-library] #verbs-view{overflow:visible}
 html body #verbs-view .verb-heading{display:none}
 html body #verbs-view .verb-options{width:350px;min-height:32px}
 html body #verbs-view .verb-toolbar{top:-44px;right:0;width:120px;z-index:90}
 html body #verbs-view .verb-development{top:4px;right:0;width:140px;max-width:140px;padding:0}
 html body #verbs-view .verb-development select{width:110px}
}
@media(max-width:400px) and (orientation:portrait){
 html body #verbs-view .verb-options{gap:4px;justify-content:space-between}
 html body #verbs-view .verb-options .verb-button{font-size:15px;min-width:0;padding:8px 7px}
 html body #verbs-view .verb-table-tools{gap:6px}
 html body #verbs-view .verb-romaji-toggle{font-size:16px;gap:4px}
}
@media(prefers-reduced-motion:reduce){html body #verbs-view .verb-romaji-toggle input:after{transition:none}}
