.project-register { display:grid; gap:14px; }
.project-controls { padding:18px; }
.project-controls-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:14px; }
.project-controls-head > strong { font-size:14px; }
.project-export { min-width:205px; }
.project-export > summary { list-style:none; cursor:pointer; border:1px solid #e5d9c4; border-radius:11px; background:#fff7e2; padding:11px 13px; font-size:12px; font-weight:750; }
.project-export > summary::-webkit-details-marker { display:none; }
.project-export > summary:focus-visible { outline:3px solid #ffdf82; }
.project-export form { display:grid; gap:10px; margin-top:8px; padding:12px; border:1px solid #e5d9c4; border-radius:12px; background:#fffaf0; }
.project-export form p { margin:0; color:#746e64; font-size:11px; line-height:1.4; }
.project-export form label { display:flex; align-items:center; gap:7px; font-size:12px; min-height:30px; }
.project-export form input { accent-color:#b68700; }
.project-export form small { margin-left:auto; color:#746e64; }
.project-export form button { min-height:44px; }
.project-filter-grid { display:grid; grid-template-columns:minmax(200px,1.4fr) repeat(3,minmax(150px,1fr)); gap:10px; }
.project-filter-grid label { min-width:0; display:grid; gap:5px; color:#655c4e; font-size:11px; font-weight:700; }
.project-filter-grid label[hidden] { display:none; }
.project-filter-grid input,.project-filter-grid select { min-width:0; width:100%; height:44px; padding:0 11px; border:1px solid #d9d2c5; border-radius:10px; background:#fff; color:#2b2925; font-size:13px; font-weight:400; }
.project-filter-grid input:focus,.project-filter-grid select:focus { outline:3px solid #ffdf82; }
.project-filter-actions { display:flex; align-items:end; gap:8px; }
.project-filter-actions button,.project-pagination button { min-height:44px; padding:0 14px; border:1px solid #ded5c6; border-radius:11px; background:#fffaf1; color:#6f550c; font-size:12px; font-weight:700; }
.project-filter-actions .primary { background:#ffbe00; color:#28220f; border-color:#ffbe00; }
.project-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.project-card { min-width:0; display:grid; gap:12px; }
.project-card header { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.project-card h3 { font-size:17px; margin:0; overflow-wrap:anywhere; }
.project-card p { margin:0; color:#746e64; font-size:12px; overflow-wrap:anywhere; }
.project-card dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0; }
.project-card dt { font-size:10px; color:#746e64; }
.project-card dd { margin:3px 0 0; font-size:12px; font-weight:650; overflow-wrap:anywhere; }
.project-progress { height:6px; border-radius:99px; background:#e8e7e2; overflow:hidden; }
.project-progress span { display:block; height:100%; background:linear-gradient(90deg,#ffc000,#287d60); }
.project-empty { grid-column:1/-1; text-align:center; padding:38px 18px; color:#746e64; }
.project-pagination { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:6px 2px; color:#746e64; font-size:12px; }
.project-pagination[hidden] { display:none; }
.project-pagination > div { display:flex; align-items:center; gap:10px; }
.project-create { padding:18px; }
.project-create > summary { cursor:pointer; min-height:44px; font-size:14px; font-weight:800; }
.project-create > p { color:#746e64; font-size:12px; }
.project-create .field-grid { margin-top:15px; }
.project-status-form { display:flex; align-items:center; gap:6px; border-top:1px solid #eee7dc; padding-top:12px; }
.project-status-form select { flex:1; min-width:0; }
.project-status-form select,.project-status-form input,.project-status-form button { height:40px; border:1px solid #d9d2c5; border-radius:9px; background:#fff; padding:0 8px; font-size:11px; }
.project-status-form input { width:54px; }
.project-status-form button { background:#fff4d3; font-weight:750; }
.project-report { margin:0; padding:24px; background:#fff; color:#262420; font:12px Arial,sans-serif; }
.project-report header { display:flex; align-items:center; justify-content:space-between; gap:25px; border-bottom:4px solid #ffc000; padding-bottom:12px; }
.project-report header img { width:150px; }
.project-report h1 { margin:0 0 5px; font-size:22px; }
.project-report header p { margin:0; color:#746e64; font-size:10px; }
.project-report table { width:100%; margin-top:18px; border-collapse:collapse; }
.project-report th,.project-report td { border-bottom:1px solid #e5ded2; padding:9px; text-align:left; vertical-align:top; }
.project-report th { background:#fff4d3; font-size:10px; }
.project-report small { color:#746e64; }
.project-report footer { margin-top:18px; font-size:10px; color:#746e64; }
@media print { @page { size:A4 landscape; margin:12mm; } .project-report { padding:0; } }
@media(max-width:1000px) { .project-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .project-filter-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:560px) { .project-card-grid,.project-filter-grid { grid-template-columns:1fr; } .project-controls-head { flex-direction:column; } .project-export { width:100%; } .project-export > summary,.project-export form label { min-height:44px; } .project-filter-grid input,.project-filter-grid select { font-size:16px; } .project-filter-actions button { flex:1; } .project-pagination { flex-direction:column; align-items:stretch; } .project-pagination > div { justify-content:space-between; } .project-status-form { flex-wrap:wrap; } .project-status-form select,.project-status-form input,.project-status-form button { min-height:44px; font-size:14px; } }
