:root{--navy:#0f2a5f;--orange:#e8590c;--orange-light:#f76707;--ink:#1a2333;--muted:#5b6b85;--line:#dbe3ef}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-noto-sans-jp), "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;color:var(--ink);letter-spacing:.01em;-webkit-font-smoothing:antialiased;background:radial-gradient(1100px 480px at 50% -240px,#1c3d7e 0%,#0000 60%),linear-gradient(#eef2f9 0%,#f6f8fc 360px)}a{color:inherit}.container{max-width:860px;margin:0 auto;padding:36px 18px 72px}.hero{text-align:center;margin-bottom:24px}.hero-badge{background:linear-gradient(135deg, var(--orange), var(--orange-light));color:#fff;border-radius:999px;margin-bottom:12px;padding:4px 14px;font-size:12px;font-weight:700;display:inline-block;box-shadow:0 3px 10px #e8590c4d}.hero-title{color:var(--navy);margin-bottom:10px;font-size:32px;font-weight:900}.hero-sub{color:var(--muted);font-size:14px;line-height:1.9}.search-card{border:1px solid var(--line);background:#fff;border-radius:20px;margin-bottom:22px;padding:22px 22px 18px;box-shadow:0 1px 2px #0f2a5f0a,0 16px 40px #0f2a5f14}.search-row{gap:10px;display:flex}.search-input{border:1.5px solid #c9d4e4;border-radius:12px;flex:1;padding:13px 16px;font-size:16px;transition:border-color .15s,box-shadow .15s}.search-input:focus{border-color:var(--orange);outline:none;box-shadow:0 0 0 4px #e8590c1f}.search-button{color:#fff;cursor:pointer;letter-spacing:.05em;background:linear-gradient(135deg,#f2680f,#e8590c 60%,#d9480f);border:none;border-radius:12px;padding:0 32px;font-size:16px;font-weight:800;transition:transform .12s;box-shadow:0 6px 18px #e8590c59}.search-button:hover{transform:translateY(-1px)}.search-button:disabled{opacity:.6;cursor:wait}.quick-words{flex-wrap:wrap;gap:7px;margin:14px 0;display:flex}.chip{border:1px solid var(--line);color:var(--navy);cursor:pointer;background:#f1f5fb;border-radius:999px;padding:6px 14px;font-size:12.5px;font-weight:700;transition:all .15s}.chip:hover{border-color:var(--orange);color:var(--orange);background:#fff4ec}.filter-row{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.filter{align-items:center;gap:8px;display:flex}.filter-label{color:var(--muted);font-size:12px;font-weight:700}.filter select{color:var(--ink);background:#fff;border:1.5px solid #c9d4e4;border-radius:9px;padding:8px 10px;font-size:13.5px}.seg{border:1.5px solid #c9d4e4;border-radius:9px;display:flex;overflow:hidden}.seg-item{color:var(--muted);cursor:pointer;border:none;border-right:1px solid var(--line);background:#fff;padding:8px 14px;font-size:13px;font-weight:700}.seg-item:last-child{border-right:none}.seg-item.active{background:var(--navy);color:#fff}.error{color:#d6336c;margin-top:12px;font-size:13.5px;font-weight:700}.results-count{color:var(--muted);margin-bottom:12px;font-size:14px}.results-count strong{color:var(--orange);font-size:20px;font-weight:900}.results-empty{text-align:center;color:var(--muted);background:#fff;border:1px dashed #c9d4e4;border-radius:14px;padding:32px;font-size:14px}.tender-card{border:1px solid var(--line);background:#fff;border-radius:14px;margin-bottom:10px;padding:16px 20px;animation:.3s both fadeUp;box-shadow:0 2px 8px #0f2a5f0d}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tender-head{align-items:center;gap:8px;margin-bottom:6px;display:flex}.tag{background:var(--navy);color:#fff;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:700}.tag-cert{color:var(--orange);border:1px solid var(--orange);background:#fff4ec}.tender-actions{border-top:1px solid #eef1f5;flex-wrap:wrap;gap:14px;margin-top:12px;padding-top:12px;display:flex}.tender-actions a{color:var(--orange);font-size:13px;font-weight:700;text-decoration:none}.tender-actions a:hover{text-decoration:underline}.tender-date{color:var(--muted);margin-left:auto;font-size:12px}.tender-title{color:var(--navy);margin-bottom:4px;font-size:16px;font-weight:800;line-height:1.6}.tender-title a{border-bottom:2px solid #e8590c59;text-decoration:none}.tender-title a:hover{color:var(--orange)}.tender-meta{color:var(--ink);margin-bottom:4px;font-size:13px;font-weight:700}.tender-dates{color:var(--muted);flex-wrap:wrap;gap:14px;margin-bottom:6px;font-size:12px;display:flex}.tender-desc{color:var(--muted);font-size:12.5px;line-height:1.8}.footer{color:#7a8aa3;text-align:center;margin-top:32px;font-size:11.5px;line-height:2}.footer a{color:var(--navy);font-weight:700}@media (max-width:560px){.hero-title{font-size:24px}.search-row{flex-direction:column}.search-button{padding:13px}.filter-row{flex-direction:column;align-items:flex-start;gap:10px}}
