:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light}body{margin:0;min-width:320px;min-height:100vh}:root{color-scheme:light}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:#f4f6f8;color:#1a1f24}.app{max-width:1100px;margin:0 auto;padding:24px 20px 60px}.eyebrow{margin:0 0 4px;color:#0b5fa5;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.app-header h1{margin:0 0 6px;font-size:1.9rem;letter-spacing:-.01em}.subtitle{margin:0 0 20px;color:#566068;font-size:1rem}.tabs{display:flex;gap:8px;border-bottom:1px solid #d7dde2;margin-bottom:20px}.tabs button{padding:10px 16px;border:none;background:transparent;cursor:pointer;font-size:.95rem;color:#566068;border-bottom:2px solid transparent}.tabs button.active{color:#0b5fa5;border-bottom-color:#0b5fa5;font-weight:600}.service-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:8px}.service-header h2{margin:0 0 4px;font-size:1.2rem}.service-abstract{margin:0;color:#566068;max-width:60ch}.search-input{padding:8px 12px;border:1px solid #c4cdd4;border-radius:6px;min-width:280px;font-size:.9rem}.list-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin:4px 0 12px}.layer-count{color:#566068;font-size:.85rem;margin:0}.page-size-label{display:flex;align-items:center;gap:6px;color:#566068;font-size:.85rem}.page-size-label select{padding:4px 8px;border:1px solid #c4cdd4;border-radius:6px;font-size:.85rem;background:#fff;color:#1a1f24}.layer-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.layer-item{display:flex;align-items:flex-start;gap:18px;background:#fff;border:1px solid #e1e6ea;border-radius:8px;padding:14px;transition:border-color .15s ease,box-shadow .15s ease}.layer-item:hover{border-color:#8fb8e6;box-shadow:0 0 0 3px #0b5fa526}.thumb{flex:0 0 140px;width:140px;height:140px;border-radius:6px;background:repeating-conic-gradient(#eef1f3,#eef1f3 25%,#f8f9fa 0%,#f8f9fa 50%) 50% / 16px 16px;border:1px solid #e1e6ea;object-fit:contain}.thumb-placeholder{display:flex;align-items:center;justify-content:center;text-align:center;font-size:.65rem;color:#97a3ab;padding:4px;line-height:1.2}.layer-info{flex:1;min-width:0}.layer-title{margin:0;font-weight:600}.layer-name{margin:2px 0 0;color:#566068}.layer-abstract{margin:6px 0 0;color:#38424a;font-size:.88rem}.layer-crs{margin:6px 0 0;color:#7c8894}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem}.format-select-wrapper{margin-top:10px}.format-select{padding:6px 10px;border:1px solid #c4cdd4;border-radius:6px;font-size:.85rem;background:#fff;color:#1a1f24;min-width:220px}.format-select:disabled{opacity:.6}.format-error{margin:6px 0 0;color:#a33;font-size:.8rem}.empty-state{padding:24px;text-align:center;color:#566068}.pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:16px}.pagination button{padding:6px 14px;border:1px solid #c4cdd4;border-radius:6px;background:#fff;color:#1a1f24;font-size:.85rem;cursor:pointer}.pagination button:disabled{opacity:.5;cursor:default}.pagination-status{color:#566068;font-size:.85rem}.status-message{padding:16px;background:#fff;border:1px solid #e1e6ea;border-radius:8px;color:#566068}.status-message.error{border-color:#e6b3b3;background:#fdf2f2;color:#a33}.status-message.error .hint{color:#7a5050;font-size:.85rem}
