.pmr-form{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:24px}.pmr-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.pmr-form label{display:flex;flex-direction:column;gap:7px;font-weight:600}.pmr-form input,.pmr-form select,.pmr-form textarea{width:100%;padding:12px;border:1px solid #cbd5e1;border-radius:10px;font:inherit}.pmr-full{grid-column:1/-1}.pmr-form button{margin-top:20px;border:0;border-radius:10px;padding:13px 20px;font-weight:700;cursor:pointer}.pmr-success,.pmr-notice{padding:14px 16px;border-radius:10px;margin-bottom:18px}.pmr-success{background:#ecfdf3;color:#166534}.pmr-notice{background:#fff7ed;color:#9a3412}.pmr-my-route{display:grid;grid-template-columns:1fr auto auto auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid #e5e7eb}.pmr-delete{color:#b91c1c}.pmr-board{overflow:auto}.pmr-board table{width:100%;border-collapse:collapse;background:#fff}.pmr-board th,.pmr-board td{padding:13px;border-bottom:1px solid #e5e7eb;text-align:left;white-space:nowrap}.pmr-board th{background:#f8fafc}@media(max-width:700px){.pmr-form-grid{grid-template-columns:1fr}.pmr-full{grid-column:auto}.pmr-my-route{grid-template-columns:1fr 1fr}.pmr-board table{min-width:760px}}

.pmr-single-wrap,.pmr-author-wrap{width:min(1120px,calc(100% - 32px));margin:48px auto}.pmr-single-card,.pmr-author-header,.pmr-author-routes{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:clamp(22px,4vw,42px);box-shadow:0 12px 35px rgba(15,23,42,.06)}.pmr-single-header h1,.pmr-author-header h1{margin:10px 0}.pmr-route-badge{display:inline-flex;background:#eaf8ef;color:#16733b;padding:7px 12px;border-radius:999px;font-weight:700;font-size:.86rem}.pmr-departure{font-size:1.08rem}.pmr-details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0}.pmr-details-grid>div{border:1px solid #e5e7eb;border-radius:14px;padding:16px;background:#f8fafc}.pmr-details-grid span{display:block;font-size:.82rem;color:#64748b;margin-bottom:5px}.pmr-details-grid strong{font-size:1rem;color:#0f172a}.pmr-single-section{border-top:1px solid #e5e7eb;padding-top:24px;margin-top:24px}.pmr-single-section h2,.pmr-transporter-card h2{font-size:1.25rem}.pmr-transporter-card{margin-top:28px;padding:22px;border-radius:15px;background:#f0fdf4;border:1px solid #bbf7d0}.pmr-private-contact{color:#475569}.pmr-author-routes{margin-top:22px}.pmr-route-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pmr-route-card{border:1px solid #e5e7eb;border-radius:14px;padding:18px}.pmr-route-card h3{margin:0 0 8px}.pmr-route-link{font-weight:700}@media(max-width:720px){.pmr-details-grid,.pmr-route-cards{grid-template-columns:1fr}.pmr-single-wrap,.pmr-author-wrap{margin:24px auto}}

/* v0.1.4 */
.pmr-form select{min-height:48px;cursor:pointer}
.pmr-archive-wrap{width:min(1180px,calc(100% - 32px));margin:44px auto}
.pmr-archive-header{margin-bottom:22px}
.pmr-archive-header h1{margin:10px 0 6px}
.pmr-archive-header p{margin:0;color:#64748b}
.pmr-board-compact{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid #e5e7eb;border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.05)}
.pmr-board-compact table{width:100%;min-width:720px;border-collapse:collapse;table-layout:fixed;background:#fff}
.pmr-board-compact th,.pmr-board-compact td{padding:14px 12px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pmr-board-compact tr:last-child td{border-bottom:0}
.pmr-board-compact th{background:#f8fafc;color:#334155;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
.pmr-board-compact td{color:#24364b;font-size:.96rem}
.pmr-board-compact .pmr-col-origin,.pmr-board-compact .pmr-col-destination{width:21%}
.pmr-board-compact .pmr-col-departure{width:20%}
.pmr-board-compact .pmr-col-space,.pmr-board-compact .pmr-col-weight{width:12%}
.pmr-board-compact .pmr-col-action{width:14%;text-align:right;overflow:visible}
.pmr-view-link{display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;border-radius:9px;background:#2563eb;color:#fff!important;font-weight:800;font-size:.88rem;text-decoration:none;white-space:nowrap}
.pmr-view-link:hover{background:#1d4ed8;color:#fff!important}
@media(max-width:760px){
  .pmr-archive-wrap{width:min(100% - 20px,1180px);margin:24px auto}
  .pmr-archive-header h1{font-size:clamp(1.55rem,7vw,2rem)}
  .pmr-board-compact{overflow:hidden;border-radius:13px}
  .pmr-board-compact table{min-width:0;table-layout:fixed}
  .pmr-board-compact th,.pmr-board-compact td{padding:11px 6px;font-size:.78rem}
  .pmr-board-compact th{font-size:.68rem;letter-spacing:0}
  .pmr-board-compact .pmr-col-origin,.pmr-board-compact .pmr-col-destination{width:27%}
  .pmr-board-compact .pmr-col-departure{width:25%}
  .pmr-board-compact .pmr-col-space,.pmr-board-compact .pmr-col-weight{display:none}
  .pmr-board-compact .pmr-col-action{width:21%;padding-left:3px;padding-right:5px}
  .pmr-view-link{padding:8px 7px;border-radius:8px;font-size:.73rem}
}
@media(max-width:390px){
  .pmr-board-compact th,.pmr-board-compact td{padding-left:4px;padding-right:4px;font-size:.73rem}
  .pmr-board-compact th{font-size:.62rem}
  .pmr-view-link{font-size:.68rem;padding:7px 5px}
}

/* PM Routes v0.2.0 — company profiles and From/To search */
.pmr-profile-form small{display:block;margin-top:7px;color:#64748b;font-weight:400}.pmr-current-logo{margin:12px 0}.pmr-current-logo img{max-width:180px;height:auto;border-radius:12px}.pmr-city-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px;max-height:320px;overflow:auto;border:1px solid #e5e7eb;border-radius:12px;padding:14px}.pmr-city-grid label{display:flex;flex-direction:row;align-items:center;gap:8px;font-weight:500}.pmr-city-grid input{width:auto}.pmr-secondary-link{display:inline-flex;margin-left:14px;font-weight:700}.pmr-company-search{width:100%}.pmr-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:14px;align-items:end;background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:20px;box-shadow:0 12px 35px rgba(15,23,42,.06)}.pmr-search-form label{display:flex;flex-direction:column;gap:7px;font-weight:800}.pmr-search-form input{width:100%;min-height:50px;padding:12px 14px;border:1px solid #cbd5e1;border-radius:11px;font:inherit}.pmr-search-form button{min-height:50px;border:0;border-radius:11px;padding:0 22px;font-weight:800;cursor:pointer}.pmr-search-arrow{font-size:1.55rem;padding-bottom:10px}.pmr-results-title{margin:30px 0 16px}.pmr-company-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.pmr-company-card{display:grid;grid-template-columns:150px 1fr;gap:18px;background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:16px}.pmr-company-card h3{margin:0 0 8px}.pmr-company-card p{margin:5px 0}.pmr-company-image img{width:150px;height:120px;object-fit:cover;border-radius:12px}
@media(max-width:760px){.pmr-city-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pmr-search-form{grid-template-columns:1fr}.pmr-search-arrow{display:none}.pmr-search-form button{width:100%}.pmr-company-results{grid-template-columns:1fr}.pmr-company-card{grid-template-columns:100px 1fr}.pmr-company-image img{width:100px;height:90px}}
@media(max-width:430px){.pmr-city-grid{grid-template-columns:1fr}.pmr-company-card{grid-template-columns:1fr}.pmr-company-image img{width:100%;height:180px}}

/* PM Routes v0.2.3 — unified company search and frontend account */
.pmr-company-search .pm-company-filter{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto auto;gap:12px;align-items:end;margin:0 0 24px;padding:18px;background:#fff;border:1px solid #dbe3ee;border-radius:12px;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.pmr-company-search .pm-company-filter-field{display:flex;flex-direction:column;gap:6px}
.pmr-company-search .pm-company-filter-field label{font-size:13px;font-weight:800;color:#12213d}
.pmr-company-search .pm-company-filter-field select{width:100%;min-height:44px;margin:0;padding:0 38px 0 12px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;font:inherit;color:#1e293b}
.pmr-company-search .pm-company-filter-button,.pmr-company-search .pm-company-filter-reset{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:7px;font-size:14px;font-weight:800;text-decoration:none;white-space:nowrap}
.pmr-company-search .pm-company-filter-button{border:0;background:#2563eb;color:#fff;cursor:pointer}
.pmr-company-search .pm-company-filter-button:hover{background:#1d4ed8;color:#fff}
.pmr-company-search .pm-company-filter-reset{border:1px solid #cbd5e1;background:#fff;color:#334155}
.pmr-company-search .pm-company-results-heading{margin:18px 0 12px;font-weight:800;color:#172554}
.pmr-company-search .pm-company-list{display:grid;gap:12px}
.pmr-company-search .pm-company-card{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 14px;background:#fff;border:1px solid #dbe3ee;border-radius:10px;box-shadow:0 4px 14px rgba(15,23,42,.05)}
.pmr-company-search .pm-company-logo-wrap{display:flex;align-items:center;justify-content:center;width:92px;height:68px;padding:8px;border:1px solid #dce5f0;border-radius:8px;background:#fff;overflow:hidden}
.pmr-company-search .pm-company-logo{width:100%;height:100%;object-fit:contain}
.pmr-company-search .pm-company-logo-fallback{font-size:1.45rem;font-weight:800;color:#2563eb}
.pmr-company-search .pm-company-name{margin:0 0 4px;font-size:1rem;line-height:1.25}
.pmr-company-search .pm-company-name a{color:#0f2347;text-decoration:none}
.pmr-company-search .pm-company-location{font-size:.82rem;color:#64748b;margin-bottom:4px}
.pmr-company-search .pm-company-excerpt{margin:0;font-size:.83rem;line-height:1.45;color:#52637a}
.pmr-company-search .pm-company-button{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:7px;background:#2563eb;color:#fff!important;font-size:.82rem;font-weight:800;text-decoration:none;white-space:nowrap}
.pmr-company-search .pm-company-button:hover{background:#1d4ed8;color:#fff!important}
.pmr-company-search .pm-companies-empty{padding:18px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;color:#475569}
.pmr-profile-account-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:16px 18px;border:1px solid #dbe3ee;border-radius:12px;background:#f8fbff}
.pmr-profile-account-bar div{display:flex;flex-direction:column;gap:2px}
.pmr-profile-account-bar span{font-size:.82rem;color:#64748b}
.pmr-profile-account-bar strong{color:#0f2347;font-size:1rem}
.pmr-profile-logout{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;text-decoration:none;font-weight:800}
.pmr-profile-login{display:flex;justify-content:center;padding:24px 0}
.pmr-profile-login-card{width:min(100%,460px);padding:28px;background:#fff;border:1px solid #dbe3ee;border-radius:16px;box-shadow:0 12px 35px rgba(15,23,42,.07)}
.pmr-profile-kicker{display:block;margin-bottom:6px;color:#2563eb;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.pmr-profile-login-card h2{margin:0 0 8px;color:#0f2347}
.pmr-profile-login-card>p{margin:0 0 20px;color:#64748b}
.pmr-profile-login-card .login-username,.pmr-profile-login-card .login-password{margin:0 0 14px}
.pmr-profile-login-card label{display:block;margin-bottom:6px;font-weight:800;color:#1e293b}
.pmr-profile-login-card input[type=text],.pmr-profile-login-card input[type=password]{width:100%;min-height:46px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px}
.pmr-profile-login-card .login-remember{margin:8px 0 16px}
.pmr-profile-login-card .button-primary{width:100%;min-height:46px;border:0;border-radius:8px;background:#2563eb;color:#fff;font-weight:800;cursor:pointer}
.pmr-forgot-password{display:inline-block;margin-top:14px;font-weight:700}
@media(max-width:760px){.pmr-company-search .pm-company-filter{grid-template-columns:1fr}.pmr-company-search .pm-company-filter-button,.pmr-company-search .pm-company-filter-reset{width:100%}.pmr-company-search .pm-company-card{grid-template-columns:76px minmax(0,1fr)}.pmr-company-search .pm-company-logo-wrap{width:76px;height:62px}.pmr-company-search .pm-company-action{grid-column:1/-1}.pmr-company-search .pm-company-button{width:100%}.pmr-profile-account-bar{align-items:flex-start;flex-direction:column}.pmr-profile-logout{width:100%}}
