:root{font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:#252a28;background:#fff;font-synthesis:none;--bg:#fff;--sidebar:#f6f8f7;--surface:#f9faf9;--ink:#252a28;--muted:#65716b;--line:#e3e8e5;--green:#217458;--green-soft:#e7f2eb;--hover:#f0f4f1;--amber:#9b680d;--danger:#b33540;color-scheme:light}:root[data-theme=dark]{--bg:#191d1b;--sidebar:#141815;--surface:#202622;--ink:#edf1ee;--muted:#a3afa7;--line:#354039;--green:#8cdbb2;--green-soft:#243f30;--hover:#28332d;--amber:#e4b954;--danger:#f29399;color:var(--ink);background:var(--bg);color-scheme:dark}*{box-sizing:border-box;letter-spacing:0}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--green);outline-offset:3px}input:focus,textarea:focus,select:focus{outline:2px solid var(--green);outline-offset:1px}button{border:0;background:none}svg{flex-shrink:0}h1,h2,h3,p{margin:0}h1{font-size:28px;font-weight:650;line-height:1.25}h2{font-size:20px;font-weight:620}h3{font-size:16px;font-weight:620}p{line-height:1.6}code,.file-path{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.muted{color:var(--muted);font-size:13px}.separator{margin:0 10px;color:var(--line)}.app-shell{min-height:100dvh;display:grid;grid-template-columns:224px minmax(0,1fr)}.sidebar{background:var(--sidebar);border-right:1px solid var(--line);padding:28px 18px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100dvh;overflow-y:auto}.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:650;margin:0 4px 45px}.brand-mark{height:36px;width:36px;display:grid;place-items:center;border-radius:7px;background:var(--green);color:var(--bg)}.sidebar-label{font-size:10px;font-weight:650;color:var(--muted);margin:0 12px 12px}.nav-item{display:flex;align-items:center;gap:11px;width:100%;border-radius:5px;padding:12px;font-size:13px;text-align:left;margin-bottom:4px;white-space:nowrap}.nav-item span{margin-left:auto;font-size:11px;color:var(--muted)}.nav-item.active{background:var(--green-soft);color:var(--green);font-weight:600}.nav-item:hover,.tag-nav:hover{background:var(--hover)}.sidebar-tags{margin-top:34px}.tag-nav{width:100%;display:flex;align-items:center;gap:9px;font-size:12px;padding:9px 12px;border-radius:4px;text-align:left}.tag-nav span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-nav small{margin-left:auto;color:var(--muted)}.tag-nav.active{color:var(--green);background:var(--green-soft)}.sidebar-bottom{margin-top:auto;padding-top:40px}.export-link{display:flex;gap:11px;align-items:center;padding:13px 12px;font-size:13px;color:var(--muted)}.export-link:hover{color:var(--green)}.local-label{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding:13px 4px 0 12px;margin-top:12px}.local-label .icon-button{margin-left:auto}.status-dot{width:6px;height:6px;background:var(--green);border-radius:50%}main{min-width:0}.topbar{height:66px;display:flex;justify-content:space-between;align-items:center;padding:0 42px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}.topbar>span{display:flex;gap:12px;align-items:center}.topbar strong{font-weight:500;color:var(--ink)}.page-content{padding:37px 42px 0;max-width:1440px;margin:auto}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:30px}.eyebrow{font-size:10px;font-weight:650;color:var(--muted);margin-bottom:10px;display:flex;align-items:center;gap:6px}.collection-count{font-size:12px;color:var(--muted);padding-bottom:4px;white-space:nowrap}.repo-form{padding-bottom:29px;border-bottom:1px solid var(--line)}.repo-form>label{font-size:12px;font-weight:600;display:block;margin-bottom:10px}.url-controls{display:flex;gap:10px}.url-input{min-width:0;display:flex;align-items:center;gap:12px;border:1px solid var(--line);padding:0 14px;border-radius:6px;flex:1;background:var(--bg);color:var(--muted)}.url-input:focus-within{border-color:var(--green);box-shadow:0 0 0 2px var(--green-soft)}.url-input input{width:100%;padding:13px 0;background:transparent;border:0;color:var(--ink);font-size:13px;outline:none}.url-input input:focus{outline:none}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:40px;border-radius:5px;padding:10px 15px;font-size:12px;font-weight:550;line-height:1.3;white-space:nowrap}.button.primary{background:var(--green);color:var(--bg);border:1px solid var(--green)}.button.primary:hover:not(:disabled){filter:brightness(1.08)}.button.secondary{background:var(--bg);border:1px solid var(--line)}.button.secondary:hover{background:var(--hover)}.button.danger{background:var(--danger);color:var(--bg)}.button.subtle-danger{color:var(--danger)}.button.subtle-danger:hover{background:var(--hover)}.icon-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;color:var(--muted);flex-shrink:0;padding:0}.icon-button:hover{background:var(--hover);color:var(--ink)}.library-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:23px 0}.search-field{display:flex;align-items:center;gap:9px;min-width:0;color:var(--muted)}.search-field input{width:100%;min-width:0;padding:9px 0;background:none;border:0;color:var(--ink);font-size:12px}.filters{display:flex;align-items:center;gap:12px}.select-field{display:flex;align-items:center;gap:6px;color:var(--muted);min-width:0}.select-field select{font-size:11px;background:var(--bg);border:0;color:var(--ink);padding:8px 2px;max-width:210px;cursor:pointer}.list-heading{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line);font-size:10px;color:var(--muted)}.skill-row{display:flex;align-items:flex-start;gap:16px;padding:24px 0;border-bottom:1px solid var(--line)}.skill-glyph{width:43px;height:43px;display:grid;place-items:center;flex-shrink:0;border:1px solid var(--line);background:var(--surface);border-radius:7px;color:var(--green);margin-top:2px}.skill-row:nth-child(3n+2) .skill-glyph{color:#886521}.skill-row:nth-child(3n) .skill-glyph{color:#54749b}.skill-main{flex:1;text-align:left;min-width:0;padding:0}.skill-main:hover h3{color:var(--green)}.skill-main h3{font-size:15px;overflow-wrap:anywhere;margin-bottom:6px}.skill-main>p{color:var(--muted);font-size:12px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:760px}.skill-meta{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:10px;color:var(--muted);margin-top:12px}.skill-meta>span{display:flex;align-items:center;gap:5px;overflow-wrap:anywhere}.avatar{width:28px;height:28px;object-fit:cover;border-radius:5px;flex-shrink:0}.skill-meta .avatar{width:15px;height:15px;border-radius:3px}.tag{background:var(--surface);padding:3px 7px;border:1px solid var(--line);border-radius:4px;color:var(--muted)}.row-end{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:28px;flex-shrink:0}.saved-date{font-size:10px;color:var(--muted);padding-top:3px}.actions{display:flex;gap:5px;align-items:center}.starred{color:var(--amber);fill:var(--amber)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:330px;padding:44px 20px;text-align:center}.empty-symbol{width:76px;height:76px;display:grid;place-items:center;margin-bottom:24px;border:1px solid var(--line);border-radius:8px;color:var(--green);background:var(--surface)}.empty-state h2,.empty-state h3{margin-bottom:9px;font-size:19px}.empty-state p{font-size:13px;color:var(--muted);max-width:450px;margin-bottom:23px}.empty-state.small{min-height:250px;gap:12px}.empty-state.small p{margin:0}.compact-empty{text-align:center;padding:35px;color:var(--muted);font-size:13px}.page-footer{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);padding:22px 0;margin-top:24px;border-top:1px solid var(--line)}.active-filter{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--green)}.repository-row{display:flex;align-items:center;gap:14px;padding:22px 0;border-bottom:1px solid var(--line)}.repository-row>.avatar{width:36px;height:36px}.repository-row>div:not(.actions){flex:1;min-width:0}.repository-row h3{font-size:14px;margin-bottom:5px;overflow-wrap:anywhere}.repository-list{margin-top:15px}.modal{background:var(--bg);color:var(--ink);padding:0;border:1px solid var(--line);border-radius:8px;width:min(640px,calc(100% - 32px));max-height:90dvh;box-shadow:0 24px 90px #0003;overflow:auto}.modal.wide{width:min(1080px,calc(100% - 48px))}.modal::backdrop{background:#101c185e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:19px 25px;border-bottom:1px solid var(--line);gap:18px}.modal-header h2{font-size:18px;overflow-wrap:anywhere}.modal-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 25px;border-top:1px solid var(--line);background:var(--surface)}.repo-summary{display:flex;align-items:center;gap:12px;padding:20px 25px;border-bottom:1px solid var(--line)}.repo-summary>div{min-width:0}.repo-title{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:600;overflow-wrap:anywhere}.repo-summary p{font-size:11px;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}.import-layout{display:grid;grid-template-columns:42% minmax(0,1fr);height:52dvh;min-height:300px}.import-list{border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.import-tools{padding:12px 20px;border-bottom:1px solid var(--line)}.import-tools .search-field{border:1px solid var(--line);border-radius:5px;padding:0 9px}.text-button{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--green);padding:13px 0 0}.candidate-list{overflow-y:auto}.candidate{display:flex;gap:10px;align-items:center;padding:17px 16px;border-bottom:1px solid var(--line)}.candidate.active{background:var(--green-soft)}.candidate input{accent-color:var(--green);width:17px;height:17px;flex-shrink:0}.candidate>svg{color:var(--muted)}.candidate-main{padding:0;text-align:left;min-width:0;flex:1}.candidate-name{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13px;font-weight:600;overflow-wrap:anywhere}.candidate-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:11px;line-height:1.6;color:var(--muted);margin:5px 0}.file-path{font-size:10px;color:var(--muted);overflow-wrap:anywhere}.badge{font-size:9px;font-weight:500;background:var(--bg);padding:2px 5px;border:1px solid var(--line);border-radius:3px;color:var(--green)}.import-preview{padding:23px 26px;overflow-y:auto}.import-preview h3{font-size:20px;margin-bottom:22px;overflow-wrap:anywhere}.markdown{font-size:13px;line-height:1.75;overflow-wrap:anywhere}.markdown h1{font-size:24px;margin:22px 0 12px}.markdown h2{font-size:19px;margin:22px 0 12px}.markdown h3{font-size:16px;margin:18px 0 10px}.markdown h4{font-size:14px}.markdown p,.markdown ul,.markdown ol{margin:12px 0}.markdown ul,.markdown ol{padding-left:23px}.markdown a{color:var(--green);text-decoration:underline}.markdown a svg{display:inline;margin-left:3px}.markdown pre{padding:16px;border:1px solid var(--line);border-radius:5px;background:var(--surface);overflow:auto;font-size:11px}.markdown code{background:var(--surface);font-size:11px;padding:2px 4px}.markdown pre code{padding:0}.markdown blockquote{margin:16px 0;padding:0 16px;border-left:3px solid var(--line);color:var(--muted)}.markdown table{display:block;max-width:100%;overflow:auto;border-collapse:collapse;font-size:12px}.markdown th,.markdown td{padding:9px;border:1px solid var(--line)}.markdown hr{border:0;border-top:1px solid var(--line);margin:22px 0}.image-caption{color:var(--muted);font-size:11px}.form-error{display:flex;gap:8px;align-items:flex-start;color:var(--danger);background:var(--surface);font-size:12px;line-height:1.6;padding:12px 25px}.form-error.inline{margin-top:12px;padding:10px 12px;border-radius:4px}.form-error svg{margin-top:2px}.notice{color:var(--amber);font-size:12px;margin:10px 0}.detail-intro{padding:22px 25px}.detail-intro>p{font-size:13px;color:var(--muted);max-width:880px;overflow-wrap:anywhere}.detail-source{display:flex;align-items:center;gap:8px;margin-top:17px;font-size:12px}.detail-source .avatar{width:20px;height:20px}.detail-source a{display:flex;align-items:center;gap:6px;overflow-wrap:anywhere}.detail-facts{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:10px;margin-top:15px}.detail-toolbar{display:flex;align-items:center;justify-content:space-between;padding:0 25px;border-bottom:1px solid var(--line);gap:14px}.tabs{display:flex;gap:20px;align-self:stretch}.tabs button{padding:16px 0;font-size:12px;border-bottom:2px solid transparent;white-space:nowrap;color:var(--muted)}.tabs button[aria-selected=true]{color:var(--green);border-color:var(--green)}.detail-body{padding:25px;min-height:250px;max-height:46dvh;overflow-y:auto}.detail-body>.file-path{margin-bottom:14px}.notes-form>label{display:block;font-size:12px;font-weight:600;margin-bottom:20px}.notes-form textarea,.notes-form input{display:block;width:100%;margin-top:9px;padding:12px;border:1px solid var(--line);border-radius:5px;background:var(--bg);color:var(--ink);font-size:13px;resize:vertical}.notes-footer{display:flex;justify-content:space-between;align-items:center}.unsaved{display:inline-block;background:var(--amber);border-radius:50%;height:5px;width:5px;margin-left:5px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%);max-width:calc(100% - 32px);display:flex;align-items:center;gap:10px;background:var(--ink);color:var(--bg);padding:10px 12px 10px 18px;box-shadow:0 4px 20px #0002;border-radius:6px;font-size:12px;z-index:10}.toast .icon-button{color:var(--bg)}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1600px){.page-content{padding-top:45px}.skill-row{padding:27px 0}.empty-state{min-height:420px}}@media(max-width:1100px){.app-shell{grid-template-columns:200px minmax(0,1fr)}.page-content{padding:28px 25px 0}.topbar{padding:0 25px}.filters{gap:8px}.select-field select{max-width:140px}.library-toolbar{gap:12px}.saved-date{display:none}.row-end{align-self:center}.skill-row{gap:12px}.row-end .actions{gap:0}.collection-count{font-size:10px}.skill-glyph{width:36px;height:36px}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:static;width:100%;height:auto;overflow:visible;padding:14px 16px 0;border-right:0;border-bottom:1px solid var(--line);display:block}.brand{margin:0 0 15px;font-size:18px}.brand-mark{width:32px;height:32px}.sidebar>nav{display:flex;gap:3px}.nav-item{font-size:12px;padding:11px 9px;gap:7px;justify-content:center;min-height:44px}.nav-item span{margin:0}.sidebar>.sidebar-label,.sidebar-tags,.sidebar-bottom .export-link,.topbar{display:none}.sidebar-bottom{position:absolute;top:9px;right:15px;padding:0}.local-label{border:0;margin:0;padding:0;font-size:10px}.local-label .icon-button{width:44px;height:44px}.page-content{padding:25px 18px 0}.page-heading{align-items:flex-start;gap:10px;margin-bottom:24px}.eyebrow{font-size:9px}h1{font-size:24px}.collection-count{white-space:normal;max-width:100px;text-align:right;line-height:1.7;padding-top:18px}.collection-count .separator{margin:0 4px}.url-controls{flex-wrap:wrap}.url-input{flex-basis:100%;height:48px}.url-input input{font-size:16px}.url-controls>.button{width:100%;min-height:44px}.button{font-size:12px;min-height:44px}.repo-form{padding-bottom:22px}.library-toolbar{flex-direction:column;align-items:stretch;padding:18px 0;gap:8px}.search-field input{font-size:16px;padding:12px 0}.filters{justify-content:space-between}.select-field select{font-size:12px;min-height:44px;max-width:170px}.skill-row{position:relative;padding:20px 0;gap:10px}.skill-glyph{width:34px;height:34px}.skill-main{padding-bottom:42px}.skill-main h3{font-size:15px}.skill-main>p{font-size:12px;-webkit-line-clamp:3}.skill-meta{font-size:10px}.row-end{position:absolute;bottom:10px;right:0}.icon-button{width:40px;height:40px}.saved-date{display:none}.empty-state{min-height:300px;padding:34px 14px}.empty-state h2{font-size:19px}.empty-state p{font-size:13px}.page-footer{margin-top:5px}.repository-row{flex-wrap:wrap;gap:10px}.repository-row>.actions{margin-left:46px}.repository-row h3{font-size:13px}.modal,.modal.wide{width:calc(100% - 20px);max-height:94dvh}.modal-header{padding:12px 16px}.modal-header h2{font-size:17px}.repo-summary{padding:15px 16px}.repo-title{font-size:13px}.modal-footer{padding:12px 16px;flex-wrap:wrap;gap:10px}.modal-footer>.muted{font-size:11px}.modal-footer>.actions{margin-left:auto}.import-layout{display:block;height:auto;min-height:0}.import-list{border-right:0;border-bottom:1px solid var(--line)}.candidate-list{max-height:30dvh;min-height:100px}.import-tools{padding:10px 16px}.import-tools .search-field input{font-size:16px;padding:9px 0}.candidate{padding:12px}.candidate input{width:20px;height:20px}.candidate-name{font-size:13px}.candidate-description{font-size:11px}.candidate .file-path{font-size:9px}.import-preview{max-height:30dvh;padding:20px 16px}.import-preview h3{font-size:19px}.detail-intro{padding:16px}.detail-facts{gap:10px}.detail-toolbar{padding:0 16px;flex-wrap:wrap;gap:6px}.detail-toolbar>.actions{padding-bottom:10px}.tabs{gap:18px}.tabs button{padding:14px 0}.detail-body{padding:18px 16px;max-height:42dvh}.notes-form input,.notes-form textarea{font-size:16px}.notes-footer{gap:10px}.toast{font-size:12px;bottom:15px;width:max-content}.markdown{font-size:13px}.markdown h1{font-size:22px}.markdown h2{font-size:18px}}@media(prefers-reduced-motion:reduce){.spin{animation:none}}.directory{--dir-ink:#25302b;--dir-muted:#63736a;--dir-line:#dce5de;--dir-green:#246b51;background:#f7f9f7;color:var(--dir-ink);min-height:100dvh;font-family:Segoe UI,system-ui,sans-serif;letter-spacing:0}.directory-header,.directory-main,.directory-footer{max-width:1440px;margin:auto;padding-left:32px;padding-right:32px}.directory-header{display:grid;grid-template-columns:240px minmax(0,620px) 1fr;align-items:center;gap:28px;min-height:80px;border-bottom:1px solid var(--dir-line);background:#f7f9f7}.directory-brand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:750;white-space:nowrap}.directory-mark{display:grid;place-items:center;width:34px;height:38px;border-radius:5px;background:var(--dir-green);color:#fff}.directory-brand-dot{color:#a54e42}.directory-header nav{justify-self:end;font-size:12px;font-weight:550}.directory-header nav a{display:flex;align-items:center;gap:5px;min-height:44px}.directory-search{display:flex;align-items:center;gap:10px;min-width:0;background:#fff;border:1px solid #cddbd1;border-radius:6px;padding:0 12px;color:var(--dir-muted)}.directory-search input{min-width:0;width:100%;height:42px;border:0;background:none;color:var(--dir-ink);font-size:14px;outline:none}.directory-search input:focus{outline:none}.directory-search:focus-within{outline:2px solid var(--dir-green);outline-offset:2px}.directory-search button{display:grid;place-items:center;width:32px;height:40px;padding:0}.directory-intro{display:flex;align-items:center;gap:14px;padding:22px 0 18px}.directory-intro h1{font-size:25px;line-height:1.25;font-weight:650}.directory-intro h1>span{color:#a54e42}.directory-intro>span{font-size:12px;color:var(--dir-muted);margin-left:auto}.directory-browsebar{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--dir-line);min-height:48px}.directory-tiers{display:flex;align-items:stretch;gap:22px;min-width:0;max-width:100%;overflow-x:auto}.directory-tiers>button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;border-bottom:2px solid transparent;padding:0 2px;font-size:13px;color:var(--dir-muted);white-space:nowrap}.directory-tiers>button[aria-pressed=true]{border-color:var(--dir-green);color:var(--dir-ink);font-weight:650}.directory-tiers>button>span{font-size:10px;color:#66756d;padding:2px 5px;border-radius:3px;background:#e9eeea;min-width:19px;text-align:center}.directory-tiers i{width:6px;height:6px;border-radius:50%;background:#84928a}.directory-tiers i[data-tier="1"]{background:#338269}.directory-tiers i[data-tier="2"]{background:#b78935}.directory-display-controls{display:flex;align-items:center;gap:10px}.directory-view{display:flex;gap:2px}.directory-view button{display:grid;place-items:center;width:36px;height:36px;border:1px solid transparent;border-radius:4px;color:var(--dir-muted)}.directory-view button[aria-pressed=true]{background:#e8efea;border-color:#c8d6cc;color:var(--dir-green)}.directory-filter-toggle{display:none}.directory-filter-band{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--dir-line)}.directory-filter{display:flex;align-items:center;gap:10px;flex:1 1 240px;max-width:360px;min-width:0}.directory-filter>span{font-size:11px;color:var(--dir-muted);white-space:nowrap}.directory-filter select{height:36px;min-width:0;width:100%;background:#fff;border:1px solid var(--dir-line);border-radius:4px;color:var(--dir-ink);padding:0 9px;font-size:12px;text-overflow:ellipsis}.directory-active-filters{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding-top:12px}.directory-active-filters button{display:flex;align-items:center;gap:6px;text-align:left;font-size:11px;color:var(--dir-green);background:#e8f0ea;border:1px solid #d2e0d6;border-radius:4px;padding:7px 9px;max-width:100%;overflow-wrap:anywhere}.directory-results{padding-bottom:36px;scroll-margin-top:16px}.directory-results-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px}.directory-results-heading h2{display:flex;align-items:center;gap:14px;font-size:12px;font-weight:500;color:var(--dir-muted);min-width:0}.directory-clear{display:flex;align-items:center;gap:5px;padding:0;min-height:36px;font-size:11px;color:var(--dir-green)}.directory-sort select{font-size:12px;border:0;background:transparent;color:var(--dir-muted);padding:8px 0;max-width:170px;min-height:36px}.directory-grid{display:grid;grid-template-columns:repeat(var(--grid-columns,4),minmax(0,1fr));gap:16px}.directory-card{display:flex;flex-direction:column;gap:18px;min-width:0;padding:20px;background:#fff;border:1px solid var(--dir-line);border-radius:6px;transition:border-color .15s}.directory-card:hover{border-color:#a9c4b2}.directory-project{display:flex;align-items:flex-start;gap:13px;min-width:0}.directory-avatar{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border:1px solid #e3eae5;background:#f4f7f4;border-radius:6px;overflow:hidden;color:var(--dir-green)}.directory-avatar img{width:100%;height:100%;object-fit:cover}.directory-project-body{min-width:0;flex:1}.directory-card-title{display:block;max-width:100%;text-align:left;padding:0;min-height:25px}.directory-card-title h3{font-size:16px;line-height:1.4;font-weight:650;overflow-wrap:anywhere}.directory-card-title:hover{color:var(--dir-green)}.directory-owner{display:block;font-size:11px;color:var(--dir-muted);overflow-wrap:anywhere;margin-top:2px}.directory-project-body>p{font-size:13px;line-height:1.65;color:#59695f;margin-top:9px;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.directory-classification{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;margin-top:auto}.directory-entry-labels{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0}.directory .tier-label{font-size:10px;line-height:1.5;color:#607067;background:#eef2ef;padding:3px 6px;border-radius:3px;white-space:nowrap}.directory .tier-label[data-tier="1"]{background:#e8f3ed;color:#28664b}.directory .tier-label[data-tier="2"]{background:#fbf2dc;color:#80600e}.directory .project-type-label{font-size:11px;line-height:1.5;color:#485d51;font-weight:600;overflow-wrap:anywhere}.directory .project-type-label[data-type=memory],.directory .project-type-label[data-type=database]{color:#26667d}.directory .project-type-label[data-type=plugin]{color:#876220}.directory .project-type-label[data-type=framework],.directory .project-type-label[data-type=skill-system]{color:#904a44}.directory-category-badge{font-size:11px;color:var(--dir-muted);text-align:left;padding:0;min-height:24px;overflow-wrap:anywhere;max-width:100%;line-height:1.5}.directory-category-badge:hover{text-decoration:underline}.directory-topics{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px;min-width:0}.directory-topics>button,.directory-topics>span{font-size:10px;color:#607266;background:#f2f5f2;border-radius:3px;padding:4px 6px;max-width:100%;overflow-wrap:anywhere}.directory-topics>button:hover{background:#e5eee7}.directory-entry-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;border-top:1px solid #edf1ee;padding-top:12px}.directory-detail-action{display:grid;place-items:center;width:36px;height:36px;border-radius:4px;color:#748179}.directory-detail-action:hover{background:#eef3ef;color:var(--dir-green)}.directory-open{display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid #ccdad1;border-radius:4px;background:#fbfdfb;color:#345b45;height:36px;padding:0 9px;font-size:12px;white-space:nowrap}.directory-open:hover{background:#eaf3ed;border-color:#a8c3b1}.directory-list{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--dir-line)}.directory-list .directory-card{display:grid;grid-template-columns:minmax(0,1fr) 245px 145px;gap:26px;padding:20px 12px 20px 0;border:0;border-bottom:1px solid var(--dir-line);border-radius:0;background:transparent;align-items:center}.directory-list .directory-card:hover{background:#f0f5f0}.directory-list .directory-classification{margin:0}.directory-list .directory-entry-actions{border:0;padding:0}.directory-list .directory-project-body>p{-webkit-line-clamp:2;max-width:760px}.directory-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;min-height:240px;color:var(--dir-muted);padding:30px}.directory-empty h3{color:var(--dir-ink);font-size:20px}.directory-empty p{font-size:13px}.directory-error{display:flex;align-items:center;gap:10px;color:#a3343e;border:1px solid #ecd8db;padding:12px;font-size:13px;margin-bottom:20px}.directory-error>span{flex:1}.directory-more{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border:1px solid var(--dir-line);border-radius:4px;margin:24px auto 0;font-size:13px}.directory-footer{display:flex;align-items:center;gap:18px;border-top:1px solid var(--dir-line);min-height:64px;color:var(--dir-muted);font-size:11px}.directory-footer>a{display:flex;align-items:center;gap:6px;margin-left:auto;min-height:44px}.directory-skip{position:fixed;top:-100px;left:20px;padding:14px;background:#fff;z-index:100}.directory-skip:focus{top:10px}@media(max-width:1100px){.directory-header{grid-template-columns:210px minmax(0,1fr) auto;gap:20px}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-list .directory-card{grid-template-columns:minmax(0,1fr) 195px 135px;gap:18px}.directory-filter{max-width:none;flex-basis:180px;gap:7px}.directory-filter>span{display:none}}@media(max-width:760px){.directory-header,.directory-main,.directory-footer{padding-left:16px;padding-right:16px}.directory-header{grid-template-columns:1fr auto;gap:10px;padding-top:12px;padding-bottom:12px}.directory-brand{font-size:21px}.directory-search{grid-column:1 / -1;grid-row:2}.directory-header nav{grid-column:2;grid-row:1}.directory-search input{font-size:16px;height:44px}.directory-search input::placeholder{font-size:14px}.directory-intro{padding:16px 0 8px}.directory-intro h1{font-size:20px}.directory-intro>span{font-size:11px}.directory-browsebar{flex-wrap:wrap;gap:8px;padding-bottom:8px}.directory-tiers{width:100%;justify-content:space-between;gap:8px}.directory-tiers>button{font-size:12px;gap:5px;min-height:44px}.directory-tiers>button>span{font-size:10px;padding:1px 4px}.directory-tiers i{display:none}.directory-display-controls{width:100%;justify-content:space-between}.directory-filter-toggle{display:flex;align-items:center;gap:7px;font-size:12px;min-height:40px;padding:0 10px;border:1px solid var(--dir-line);border-radius:4px;background:#fff}.directory-filter-toggle>span{font-size:10px;color:var(--dir-green)}.directory-view button{width:40px;height:40px}.directory-filter-band{display:none;flex-direction:column;align-items:stretch;gap:10px;padding:12px 0}.directory-filter-band.is-open{display:flex}.directory-filter{flex:0 0 auto;display:flex;flex-direction:column;align-items:stretch;gap:5px}.directory-filter>span{display:block;font-size:11px}.directory-filter select{height:44px;font-size:16px}.directory-active-filters button{min-height:36px}.directory-results-heading{min-height:48px}.directory-results-heading h2{font-size:11px;gap:8px;flex-wrap:wrap}.directory-sort select{font-size:12px;min-height:44px;max-width:160px}.directory-clear{min-height:36px;font-size:10px}.directory-list .directory-card{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:18px 0}.directory-list .directory-project{grid-column:1 / -1}.directory-list .directory-classification{grid-column:1}.directory-list .directory-entry-actions{grid-column:2;align-self:end;gap:4px}.directory-list .directory-project-body>p{-webkit-line-clamp:3}.directory-avatar{width:34px;height:34px}.directory-project{gap:10px}.directory-card-title h3{font-size:16px}.directory-project-body>p{font-size:13px;margin-top:7px;line-height:1.6}.directory-entry-labels{gap:5px}.directory .project-type-label{font-size:10px}.directory-category-badge{font-size:10px;min-height:28px}.directory-detail-action{width:36px;height:40px}.directory-open{height:40px;padding:0 8px}.directory-open>svg:first-child{display:none}.directory-topics>button{min-height:30px}.directory-footer{gap:10px}.directory-footer>span:nth-child(2){display:none}}@media(max-width:520px){.directory-grid:not(.directory-list){grid-template-columns:minmax(0,1fr)}.directory-card{padding:16px}.directory-intro h1{font-size:19px}}@media(prefers-reduced-motion:reduce){.directory-card{transition:none}}.category-editor{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:12px;margin:12px 0}.category-editor select{min-width:0;max-width:100%;padding:9px;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:4px;font-size:12px}.category-editor>span{color:var(--muted);font-size:11px}.category-label{font-weight:600;color:var(--green)}.publication-control{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);padding:10px 0}.publication-control input{width:17px;height:17px;accent-color:var(--green)}.publication-status{color:var(--green);font-weight:600}.tier-label{font-size:11px;font-weight:650;color:var(--dir-muted,var(--muted))}.tier-label[data-tier="1"]{color:#216a53}.tier-label[data-tier="2"]{color:#805d12}@media(max-width:760px){.directory-filter-toggle,.directory-view button,.directory-detail-action,.directory-open{min-height:44px}.directory-view button,.directory-detail-action{width:44px}.category-editor select{font-size:16px;width:100%}}html:has(.directory){scrollbar-gutter:stable}.directory-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;padding:18px 0}.directory-intro h1{min-width:0}.directory-intro>span{margin:0;white-space:nowrap}.directory-sections{display:flex;align-items:stretch;gap:16px;min-width:0}.directory-sections a{display:flex;align-items:center;gap:6px;min-height:44px;border-bottom:2px solid transparent;color:var(--dir-muted);font-size:13px;white-space:nowrap}.directory-sections a[aria-current=page]{border-color:var(--dir-green);color:var(--dir-ink);font-weight:650}.directory-sections a>span{min-width:19px;padding:2px 4px;border-radius:3px;background:#e9eeea;font-size:10px;text-align:center;color:var(--dir-muted)}.directory-columns{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:12px;color:var(--dir-muted)}.directory-columns select{width:56px;height:36px;padding:0 8px;border:1px solid var(--dir-line);border-radius:4px;background:#fff;color:var(--dir-ink);font-size:13px}.directory-view{margin-left:auto}.directory-columns+.directory-view{margin-left:0}.directory-view button:hover{background:#edf2ee}.directory .project-type-label{display:inline-flex;align-items:center;gap:5px;max-width:100%}.project-type-label>span{min-width:0}.directory .project-type-label>svg{flex-shrink:0}.directory-card[data-selected=true]{background:#eaf2ee;box-shadow:inset 0 0 0 1px #adc7b7}.directory-compact .directory-card{padding:14px;gap:12px}.directory-compact .directory-list .directory-card{padding:12px 12px 12px 0;gap:20px}.directory-compact .directory-project-body>p{-webkit-line-clamp:2;margin-top:5px}.directory-compact .directory-list .directory-project-body>p{-webkit-line-clamp:1}.directory-compact .directory-list .directory-card-title{display:inline-block;vertical-align:baseline}.directory-compact .directory-list .directory-project-body>.directory-owner{display:inline;margin-left:8px}.directory-compact .directory-list .directory-topics{display:none}.directory-compact .directory-classification{gap:3px}.directory-compact .directory-project>.directory-avatar{width:32px;height:32px}.directory-dialog{position:fixed;inset:0 auto 0 max(0px,calc(100vw - 520px));margin:0;width:min(520px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-left:1px solid var(--dir-line);border-radius:0;background:#fff;color:var(--dir-ink);padding:0;overflow:hidden;box-shadow:-8px 0 36px #162d2220}.directory-dialog[open]{display:flex;flex-direction:column;animation:directory-panel-in .16s ease-out}.directory-dialog::backdrop{background:#1e33272b}.directory-dialog>header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;min-height:65px;padding:10px 24px;border-bottom:1px solid var(--dir-line);font-size:12px;color:var(--dir-muted)}.directory-dialog .icon-button{width:44px;height:44px}.directory-dialog-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:28px 24px}.directory-detail-identity{display:flex;align-items:center;gap:14px}.directory-detail-identity>div{min-width:0}.directory-dialog .directory-avatar{width:48px;height:48px}.directory-dialog h2{font-size:24px;line-height:1.3;margin:4px 0 0;overflow-wrap:anywhere}.directory-detail-tier{display:inline-flex;margin:22px 0 14px}.directory-dialog p{font-size:14px;line-height:1.75;color:#4b6053;overflow-wrap:anywhere;white-space:pre-wrap}.directory-dialog dl{margin:24px 0 0;border-top:1px solid var(--dir-line)}.directory-dialog dl>div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:12px;padding:16px 0;border-bottom:1px solid var(--dir-line);font-size:12px;line-height:1.6}.directory-dialog dt{color:var(--dir-muted)}.directory-dialog dd{margin:0;min-width:0;overflow-wrap:anywhere}.directory-dialog dd>a{display:inline;word-break:break-word;text-decoration:underline;text-decoration-color:#bccdc1;text-underline-offset:3px}.directory-dialog dd>a>svg{display:inline;vertical-align:middle;margin-left:4px}.directory-detail-tags{margin-top:24px}.directory-detail-tags h3{font-size:12px;font-weight:500;color:var(--dir-muted)}.directory-dialog-footer{flex-shrink:0;padding:16px 24px max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--dir-line);background:#fbfcfb}.directory-dialog-footer>p{font-size:12px;color:#a3343e;margin-bottom:12px}.directory-dialog-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.directory-cta,.directory-share{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 12px;border-radius:5px;font-size:12px;font-weight:550}.directory-cta{background:var(--dir-green);color:#fff}.directory-cta:hover{background:#19583f}.directory-share{border:1px solid var(--dir-line);background:#fff;min-width:96px}.directory-share:hover{background:#edf3ef}@keyframes directory-panel-in{0%{transform:translate(18px);opacity:.7}to{transform:translate(0);opacity:1}}@media(max-width:900px){.directory-intro{grid-template-columns:minmax(0,1fr);gap:6px;padding:16px 0 4px}.directory-sections{grid-column:1 / -1;justify-content:flex-start;gap:22px}}@media(max-width:760px){.directory-display-controls{gap:8px;justify-content:flex-start}.directory-columns select{height:44px;font-size:16px}.directory-view,.directory-filter-toggle{flex-shrink:0}.directory-sections{justify-content:space-between;gap:8px}.directory-sections a{font-size:12px;gap:5px}.directory-sections a>span{padding:1px 4px}.directory-compact .directory-list .directory-card{padding:12px 0;gap:8px}.directory-compact .directory-list .directory-card-title{display:block}.directory-compact .directory-list .directory-project-body>.directory-owner{display:block;margin-left:0}.directory-compact .directory-list .directory-project-body>p{-webkit-line-clamp:2}.directory-dialog{left:0;width:100vw;border-left:0}.directory-dialog>header{padding:8px 16px;min-height:60px}.directory-dialog-body{padding:24px 20px}.directory-dialog h2{font-size:22px}.directory-dialog-footer{padding-left:16px;padding-right:16px}.directory-dialog-actions{gap:8px}.directory-cta>svg:last-child{display:none}}@media(prefers-reduced-motion:reduce){.directory-dialog[open]{animation:none}}.directory-filter-toggle>.directory-filter-label{font-size:12px;color:inherit}.directory-filter-band{flex-direction:column;align-items:stretch;gap:10px;padding:12px 0}.directory-facet{display:grid;grid-template-columns:88px minmax(0,1fr);gap:12px;align-items:start}.directory-facet-label{font-size:11px;font-weight:600;color:var(--dir-muted);padding-top:9px}.directory-facet-options{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.directory-chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;max-width:100%;padding:5px 10px 5px 7px;border:1px solid #dce4df;border-radius:18px;background:#fff;color:#43584b;font-size:12px;text-align:left;transition:background .12s,border-color .12s}.directory-chip>span{min-width:0;overflow-wrap:anywhere}.directory-chip>svg{flex-shrink:0;opacity:0}.directory-chip small{font-size:10px;font-variant-numeric:tabular-nums;color:#718176;min-width:12px;text-align:center}.directory-chip:hover{border-color:#9fb8a8;background:#f0f5f1}.directory-chip[aria-pressed=true]{border-color:#80aa93;background:#e3f1e8;color:#215c3e}.directory-chip[aria-pressed=true]>svg{opacity:1}.directory-chip[aria-pressed=true] small{color:#34694c}.directory-facet-more{display:inline-flex;align-items:center;gap:4px;min-height:32px;padding:4px 8px;font-size:11px;color:var(--dir-muted)}.directory-facet-more[aria-expanded=true]>svg{transform:rotate(180deg)}.directory-facet-search{display:flex;align-items:center;gap:8px;width:100%;color:var(--dir-muted);padding:5px 10px;border:1px solid var(--dir-line);border-radius:5px;background:#fff}.directory-facet-search input{width:100%;min-width:0;border:0;background:transparent;font-size:13px;min-height:28px;color:var(--dir-ink)}.directory-facet-empty{font-size:12px;color:var(--dir-muted);padding:8px 0}.directory-active-filters{gap:6px}.directory-active-filters button{border-radius:16px;padding:5px 9px}.directory-topics>button[aria-pressed=true]{background:#dceee2;color:#215c3e}@media(max-width:760px){.directory-facet{grid-template-columns:minmax(0,1fr);gap:6px}.directory-facet-label{padding-top:0}.directory-filter-band{gap:14px}.directory-chip,.directory-facet-more,.directory-active-filters button{min-height:44px}.directory-facet-search input{font-size:16px;min-height:34px}}@media(prefers-reduced-motion:reduce){.directory-chip{transition:none}}@media(max-width:760px){html:has(.directory){scrollbar-gutter:auto}}@media(max-width:360px){.directory-filter-toggle{width:44px;padding:0;justify-content:center}.directory-filter-toggle>.directory-filter-label{display:none}.directory-tiers{gap:4px}.directory-tiers>button{gap:4px}}
