:root{font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;color:#153e35;background:#f4f8f5;font-size:16px}*{box-sizing:border-box}body{margin:0;min-width:0}a{color:#126b54}button,input,select,textarea{font:inherit}button{cursor:pointer}.wrap{max-width:1100px;margin:auto;padding:0 20px}.top{background:#143e35;color:#fff}.head{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{font-weight:900;letter-spacing:.08em;font-size:1.15rem}.head a{color:#fff;text-decoration:none}.head nav{display:flex;gap:16px;flex-wrap:wrap;font-size:.9rem}.eyebrow{margin-top:36px;color:#14745e;letter-spacing:.16em;font-size:.82rem;font-weight:900}h1{font-size:clamp(2rem,4.6vw,3.25rem);line-height:1.25;letter-spacing:-.03em;margin:8px 0 14px}h2{font-size:1.35rem;margin:0 0 15px}.lead{font-size:1.06rem;max-width:780px;line-height:1.8}.alert{background:#fff4db;border-left:5px solid #c48a2d;padding:14px 18px;border-radius:10px;margin:25px 0}.alert p{margin:5px 0;line-height:1.75}.panel{background:#fff;border:1px solid #d2e2d8;border-radius:18px;padding:24px;margin:20px 0;box-shadow:0 8px 28px #173e3510}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.pill{border-radius:50px;padding:5px 12px;background:#e3f4e9;font-size:.8rem;font-weight:800;white-space:nowrap}.filters{display:grid;grid-template-columns:2fr 1fr;gap:12px}.filters label,.checkrow label,.note{display:flex;flex-direction:column;gap:5px;font-weight:700;font-size:.9rem}input,select,textarea{width:100%;border:1px solid #a9c4b7;border-radius:10px;padding:11px;background:white;color:#153e35;min-width:0}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid #85d3b5;outline-offset:2px}.hint{font-size:.9rem;color:#506e60;line-height:1.65}.results{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,225px),1fr));gap:8px;max-height:270px;overflow:auto;padding:2px}.result{border:1px solid #bfd8c9;background:#f6faf7;text-align:left;border-radius:11px;padding:10px;min-width:0;overflow-wrap:anywhere}.result:hover{background:#e5f6ec}.result strong,.result small{display:block}.result small{color:#557669;margin-top:3px}.selected{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:16px}.staycard{border:1px solid #cddfd4;border-radius:13px;padding:16px;min-width:0;background:#fbfdfa}.staycard h3{margin:0;font-size:1.1rem;overflow-wrap:anywhere}.staycard .meta{font-size:.84rem;color:#537061}.staycard .meta a{overflow-wrap:anywhere}.staycard .remove{border:1px solid #b5c8bd;background:#fff;border-radius:7px;padding:4px 9px;margin-top:8px}.checkrow{display:grid;grid-template-columns:1fr 170px;align-items:center;gap:10px;border-bottom:1px solid #e2eee7;padding:9px 0}.checkrow label{font-weight:500}.checkrow select{padding:7px}.note{margin-top:14px}.note textarea{min-height:74px;resize:vertical}.table-scroll{overflow:auto;max-width:100%}table{border-collapse:collapse;min-width:450px;width:100%;text-align:left}caption{text-align:left;color:#557568;font-size:.84rem;padding-bottom:7px}th,td{border-bottom:1px solid #dbe7e0;padding:10px;min-width:120px;vertical-align:top;overflow-wrap:anywhere}thead th{background:#eaf4ed}tbody th{font-weight:600}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.actions button,.upload{background:#116c53;border:0;color:#fff;border-radius:10px;padding:11px 15px;font-weight:750}.actions button:hover,.upload:hover{background:#0b4d3b}.actions .quiet{background:#e5eee8;color:#225445}.upload{position:relative;cursor:pointer}.upload input{position:absolute;opacity:0;width:1px;height:1px;left:0;bottom:0}.footnote{padding:18px 0 60px;line-height:1.8}footer{text-align:center;padding:28px;background:#143e35;color:#e5f5ec;font-size:.85rem}.empty{color:#678275}.staycard .meta a{display:inline-block;margin-top:3px}@media(max-width:650px){.wrap{padding:0 14px}.head{align-items:flex-start;padding-top:15px;padding-bottom:15px;flex-direction:column}.head nav{gap:10px}.panel{padding:16px}.filters{grid-template-columns:1fr}.checkrow{grid-template-columns:1fr}.checkrow select{width:100%}.results{max-height:250px}.actions>*{flex:1 1 150px;text-align:center}h1{font-size:2rem}}@media print{.top,.filters,.results,.actions,.footnote,footer,.alert{display:none}.panel{box-shadow:none;border:0;padding:5px}.staycard{break-inside:avoid}body{background:white}}
