/* A project's card and the library of them (知识库). Colours and sizes of letter are the theme's. */
/* The card read: a name and what is said under it, two to a row where there is room; the long ones take the row. */
.card-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;margin:0}
.card-list>div{min-width:0}
.card-list>div:nth-child(n+9),.card-list>div:only-child{grid-column:1/-1}
.card-list dt{font-size:13px;color:var(--qf-ink-3);margin-bottom:2px}
.card-list dd{margin:0;font-size:14px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}
.card-missing{margin:12px 0 0;font-size:13px;color:var(--qf-amber)}
/* The card written: the long fields take the row; the ones that must be filled say so, quietly, beside their names. */
.card-fields .wide{grid-column:1/-1}
.card-fields textarea{width:100%}
.card-must{color:var(--qf-ink-3);font-weight:400}
/* The library. Three counts in a row at every width; the one that filters the list is marked. */
.qf-ui .main .knowledge-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.knowledge-stats .stat{text-align:left;cursor:pointer}
.knowledge-stats .stat[aria-pressed=true]{border-color:#3f6c86}
/* The table keeps to the width of the page, long words broken; on a narrow screen it keeps a readable width and is scrolled sideways.
   The district and the date are short and of a known length, so they have widths of their own (a share of a narrow page was less than the date needs,
   and the date stood out past the edge); the district's is that of six characters, the longest in use (苏州工业园区), which four had folded in two.
   The name and the number take a share, the two columns of prose divide what is left. */
.knowledge-table{table-layout:fixed;width:100%;min-width:48rem}
.knowledge-table th:nth-child(1){width:29%}.knowledge-table th:nth-child(2){width:7.4rem}.knowledge-table th:nth-child(5){width:13%}.knowledge-table th:nth-child(6){width:7.6rem}
.qf-ui .main .knowledge-table td{white-space:normal;vertical-align:top;overflow-wrap:anywhere}
.qf-ui .main .knowledge-table .project-name-cell{width:auto;min-width:0;max-width:none}
/* The name starts on the same line as what stands beside it: the button keeps its height to press, but that height reaches into the cell's own margin instead of pushing the name down. */
.qf-ui .main .knowledge-table td .title{min-height:0;padding:9px 0;margin:-9px 0;line-height:inherit}
.qf-ui .main .knowledge-table td:last-child{white-space:nowrap}
.knowledge-table td small{display:block;margin-top:4px;color:var(--qf-ink-3);font-size:12px;line-height:1.6}
/* One project's card in the dialog. */
.knowledge-card h2{margin:0 0 8px;font-size:20px;line-height:1.4;overflow-wrap:anywhere}
.knowledge-card .project-meta{margin-bottom:16px}
.knowledge-card h3{margin:20px 0 8px;font-size:15px}
/* The final files, one to a row across the card, a line between them and none after the last. */
.knowledge-files{display:flex;flex-direction:column}
.knowledge-files .file-entry:first-child{padding-top:0}
.knowledge-files .file-entry:last-child{padding-bottom:0;border-bottom:0}
.knowledge-files small{color:var(--qf-ink-3);font-size:12px}
.knowledge-history{margin-top:16px;font-size:13px}
.knowledge-history summary{cursor:pointer;color:#3f6c86}
.knowledge-history p{margin:6px 0;color:#5f5d58}
/* The words to look for and the way into the final reports' own words stand together as one of the row's cells, the two of one height. */
.qf-ui .main .knowledge-find{display:flex;gap:8px;min-width:0;grid-column:1/-1}
.qf-ui .main .knowledge-find input{flex:1 1 auto}
.qf-ui .main .knowledge-find button{flex:none;height:42px;min-height:42px;padding-top:0;padding-bottom:0;white-space:nowrap}
/* What was found in the final reports: a project, the file, and the places, the words asked for marked. */
.knowledge-full{margin:14px 0 6px;padding:14px 16px;border:1px solid #e7e5e0;border-radius:12px;background:#f7f7f5}
/* Its heading and the way to put it away keep one row at every width: the heading folds beside the button, the button does not drop under it. */
.knowledge-full .panel-title{flex-wrap:nowrap;align-items:center;margin-bottom:6px}
.qf-ui .knowledge-full .panel-title h2{flex:1 1 auto;min-width:0;margin:0;font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.knowledge-full .panel-title button{flex:none}
.full-list{list-style:none;margin:0;padding:0}
.full-list>li{padding:12px 0;border-top:1px solid #e7e5e0}
.full-list>li:last-child{padding-bottom:0}
.full-head small,.full-more{display:block;margin-top:2px;color:var(--qf-ink-3);font-size:12px;line-height:1.6}
/* A project's name here is pressed as it is in the table (its card opens) and looks as it does there: words, not a button.
   The height to press reaches into the margin, so the name stands where plain words would. */
.qf-ui .main .full-name{display:block;width:100%;height:auto;min-height:0;padding:9px 0;margin:-9px 0;border:0;border-radius:0;background:none;box-shadow:none;text-align:left;font-size:14px;font-weight:500;line-height:1.5;color:#262624;white-space:normal;overflow-wrap:anywhere}
.qf-ui .main .full-name:hover{color:#3f6c86}
/* Under a project, each of its files that was found stands a little in, a line down its side: the project is read first, its files as its own. */
.full-doc{margin:10px 0 0;padding:0 0 0 12px;border-left:2px solid #e7e5e0}
.full-rest{margin:10px 0 0;font-size:12px;line-height:1.6;color:var(--qf-ink-3)}
/* The file as the library hands it out, the way to look at it beside its name (the two on one line of letters); under them, where the file is a zip, the document inside it. */
.full-file{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0 0 4px;font-size:13px;line-height:1.6}
.full-file a{min-width:0;overflow-wrap:anywhere}
.full-file small{flex-basis:100%;color:var(--qf-ink-3);font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.full-hit{margin:4px 0;font-size:14px;line-height:1.7;color:#5f5d58;overflow-wrap:anywhere}
.full-hit span{margin-right:8px;color:var(--qf-ink-3);font-size:12px;white-space:nowrap}
.full-hit mark{padding:0 1px;border-radius:3px;background:#edf1f3;color:#262624;font-weight:600}
/* For administrators: how far the reading has got, and what could not be read, by the reason. */
.knowledge-reading{margin:12px 0 0;font-size:13px}
.knowledge-reading summary{cursor:pointer;color:#3f6c86;padding:4px 0}
.knowledge-reading h3{margin:14px 0 4px;font-size:13px;font-weight:600;color:#5f5d58}
.knowledge-reading ul{list-style:none;margin:0;padding:0}
.knowledge-reading li{padding:6px 0;border-top:1px solid #e7e5e0;overflow-wrap:anywhere}
.knowledge-reading li small{display:block;color:var(--qf-ink-3);font-size:12px;line-height:1.6}
@media(min-width:1201px){.qf-ui .main .knowledge-filters{grid-template-columns:minmax(22rem,2.4fr) repeat(3,minmax(0,1fr))}.qf-ui .main .knowledge-find{grid-column:auto}}
@media(max-width:700px){.qf-ui .main .knowledge-find button{height:44px;min-height:44px}.knowledge-full{padding:12px}.full-doc{padding-left:10px}.qf-ui .main .full-name{padding:12px 0;margin:-12px 0}.knowledge-reading summary{padding:12px 0}.card-list{grid-template-columns:minmax(0,1fr)}.card-list>div{grid-column:1/-1}.qf-ui .main .knowledge-table td .title{padding:12px 0;margin:-12px 0}}
/* The tabs of the library: the cards, and the points of review. As the tabs of 经营管理 (the one open is underlined). */
.knowledge-tabs{display:flex;flex-wrap:wrap;gap:0 28px;margin:18px 0 14px;border-bottom:1px solid #e7e5e0}
.qf-ui .main .knowledge-tabs button{display:inline-flex;align-items:center;height:auto;min-height:40px;margin:0 0 -1px;padding:0;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;box-shadow:none;color:#5f5d58;font-size:15px;font-weight:500;white-space:nowrap}
.qf-ui .main .knowledge-tabs button:hover{color:#262624}
.qf-ui .main .knowledge-tabs button[aria-current=page]{border-bottom-color:#3f6c86;color:#3f6c86;font-weight:600}
/* The two choices (authority, type) of the opinions tab, as the filters of the project ledger; one to a row on a very narrow screen. */
.qf-ui .main .project-filters.opinion-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:400px){.qf-ui .main .project-filters.opinion-filters{grid-template-columns:minmax(0,1fr)}}
/* The topics counted, each a button with its count; the one pressed lists its points. */
.opinion-topics{margin:14px 0 6px}
.qf-ui .opinion-topics h2{margin:0 0 8px;font-size:15px}
.opinion-topic-list{display:flex;flex-wrap:wrap;gap:8px}
.qf-ui .main .opinion-topic-list button{display:inline-flex;align-items:center;gap:8px;height:auto;min-height:0;padding:5px 12px;border-radius:999px;font-size:13px;line-height:1.6}
.qf-ui .main .opinion-topic-list button b{font-weight:600;color:#3f6c86}
.qf-ui .main .opinion-topic-list button[aria-pressed=true]{border-color:#3f6c86;background:#edf1f3}
/* The points by project: the project read first, its points under it in a list. */
.opinion-groups{list-style:none;margin:14px 0 0;padding:0}
.opinion-groups>li{padding:12px 0;border-top:1px solid #e7e5e0}
.opinion-list{margin:8px 0 0;padding:0 0 0 1.2em;font-size:14px;line-height:1.7}
.opinion-list li{margin:4px 0;overflow-wrap:anywhere}
.opinion-list small{display:block;margin-top:2px;color:var(--qf-ink-3);font-size:12px;line-height:1.6}
.card-list .opinion-list{margin-top:0}
/* The tag on a point the system took from the final files, and the rows of points in the card's form. */
.card-tag{display:inline-block;margin-left:8px;padding:0 8px;border:1px solid #d8d5ce;border-radius:999px;color:#5f5d58;font-size:12px;line-height:1.6;white-space:nowrap;vertical-align:baseline}
.card-tag[hidden]{display:none}
.opinion-title{display:block;margin-bottom:6px}
.opinion-editor{display:grid;gap:8px}
.opinion-row{display:flex;align-items:center;gap:8px}
.opinion-row input{flex:1 1 auto;min-width:0}
.opinion-row .card-tag{flex:none;margin:0}
.opinion-row button,.opinion-editor>button{flex:none}
.opinion-editor>button{justify-self:start}
/* Settings: the rows of the authorities' names, and the spellings waiting to be put under one. */
.qf-ui .authority-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;gap:10px;align-items:start;margin:0 0 10px}
.qf-ui .authority-seen{align-items:center;justify-content:space-between;gap:10px}
.qf-ui .authority-seen select{max-width:16rem}
.authority-seen small{display:block;color:var(--qf-ink-3);font-size:12px}
@media(max-width:700px){.qf-ui .authority-row{grid-template-columns:minmax(0,1fr)}.qf-ui .authority-seen{flex-wrap:wrap}.qf-ui .authority-seen select{max-width:none;width:100%}.qf-ui .main .knowledge-tabs button{min-height:44px}.knowledge-tabs{gap:0 20px}}
/* the file a point was taken from (2026-10-30) */
.opinion-row{flex-wrap:wrap}
.opinion-row>input{flex:1 1 0;width:auto}
.opinion-row .opinion-doc{flex:0 0 100%;margin:-2px 0 2px;color:var(--qf-ink-3);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.opinion-doc[hidden]{display:none}
