.role-entry{padding-bottom:60px}.role-entry h2{font-size:34px}.role-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.role-card{border:1px solid var(--line);border-radius:12px;padding:25px;background:#fdfcf6;transition:transform .2s,box-shadow .2s}.role-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #244b3910}.role-card h3{font-size:23px}.role-card p{font-size:12px;color:var(--muted);min-height:60px}.role-card>span:last-child{font-size:11px}.role-icon{font-size:31px;color:#ad784c}.login-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:45px;align-items:start;margin-top:40px}.login-grid .role-grid{grid-template-columns:1fr 1fr}.portal-intro{max-width:820px}.narrow{max-width:800px}.workspace-heading{display:flex;justify-content:space-between;gap:30px;align-items:center}.workspace-heading p{color:var(--muted);font-size:14px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:18px;margin:28px 0}.stats>div{padding:22px;background:#e9ecdf;border:1px solid #dce2ce;border-radius:10px}.stats small{font-size:11px;color:var(--muted);display:block}.stats b{font-family:Georgia,serif;font-size:40px;line-height:1.2;display:block;margin-top:10px;font-weight:400}.stats b.money-stat{font-size:27px}.notice{padding:15px 20px;border-radius:6px;background:#f0e7cb;color:#755d31;font-size:12px;margin:20px 0}.workspace-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:28px 0 40px}.workspace-tabs a{border:1px solid var(--line);padding:8px 16px;border-radius:30px;font-size:12px;background:#fffdf6}.booking-card{background:#fffdf6;border:1px solid var(--line);border-radius:12px;padding:26px;margin:20px 0}.booking-heading{display:flex;justify-content:space-between;gap:20px;align-items:start}.booking-heading small{font-size:10px;letter-spacing:1px;color:var(--muted)}.booking-heading h3{font-size:26px}.status{display:inline-block;font-size:10px;letter-spacing:.5px;padding:5px 11px;border-radius:20px;background:#e6eadc;white-space:nowrap}.status-pending,.status-held{background:#f2e4b9;color:#805b20}.status-accepted{background:#dcebdc}.status-completed{background:#254b39;color:#fff}.status-rejected,.status-cancelled,.status-expired{background:#efe0d9;color:#824d36}.booking-facts,.booking-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-size:13px}.booking-facts strong{margin-left:auto}.booking-actions{gap:10px;margin-top:18px}.booking-actions button,.inline-actions button{font-size:12px;padding:10px 14px}.booking-notes{font-size:13px;border-left:3px solid #c8d3bb;padding-left:15px;color:var(--muted)}.empty-state{text-align:center;background:#e9ecdf;border-radius:12px;padding:50px 25px;margin-top:25px}.empty-state>span{font-size:44px}.empty-state p{color:var(--muted);font-size:13px}.table-wrap{overflow-x:auto;margin:25px 0;border:1px solid var(--line);border-radius:10px;background:#fffdf6}table{width:100%;border-collapse:collapse;font-size:12px}th,td{text-align:left;padding:15px;vertical-align:top;border-bottom:1px solid var(--line)}th{font-size:10px;text-transform:uppercase;letter-spacing:1px;background:#e9ecdf}td small{font-size:10px;color:var(--muted)}td form{margin-top:8px}td button,td select{font-size:11px}td .secondary{padding:8px 12px}.schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:25px 0}.schedule-grid .plan-panel{padding:24px}.inline-form{display:flex;gap:15px;align-items:end;flex-wrap:wrap}.inline-form label{flex:1;min-width:140px}.inline-form button{margin:15px 0}.inline-actions{display:flex;gap:12px;flex-wrap:wrap}.voucher-row{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:16px 0;border-top:1px solid var(--line);font-size:13px}.voucher-row form{margin-left:auto}.review{padding:20px;border:1px solid var(--line);border-radius:8px;margin:15px 0;background:#fffdf6;font-size:13px}.review-photo{max-width:250px;max-height:200px;object-fit:cover;border-radius:7px}.host-story{background:#e9ecdf;padding:20px;border-radius:8px;font-size:13px;margin:20px 0}.host-story p{font-size:12px}.identity-bar{border-top:1px solid var(--line);background:#e9ecdf;font-size:11px;padding:8px}.identity-bar>.container{display:flex;align-items:center;gap:20px}.identity-bar form{margin-left:auto}.identity-bar button{background:none;border:0;color:var(--ink);font-size:11px;text-decoration:underline}textarea{font:inherit;border:1px solid var(--line);border-radius:5px;background:#fffdf7;color:var(--ink);padding:12px;resize:vertical;max-width:100%}.section>h2{margin-top:50px}.plan-panel details{margin-top:15px}.validation ul{padding-left:20px}@media(max-width:1000px){.role-grid{grid-template-columns:1fr 1fr}.identity-bar .container{padding-inline:15px}.identity-bar span{max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(max-width:700px){.login-grid,.schedule-grid{grid-template-columns:1fr}.role-card{padding:19px}.role-card h3{font-size:21px}.role-card p{min-height:80px}.workspace-heading{display:block}.workspace-heading>.primary{margin-top:15px}.stats{grid-template-columns:1fr 1fr}.stats>div{padding:15px}.stats b{font-size:32px}.stats b.money-stat{font-size:21px}.booking-card{padding:20px}.booking-heading{gap:10px}.booking-heading h3{font-size:23px}.booking-facts{gap:10px}.booking-facts strong{margin-left:0}.identity-bar .container{gap:12px;padding-inline:5px}.identity-bar span{max-width:55%}.table-wrap{margin-inline:-4px}.role-entry h2{font-size:30px}}@media(max-width:400px){.stats,.role-grid,.login-grid .role-grid{grid-template-columns:1fr}.role-card p{min-height:0}}@media print{header,footer,.no-print{display:none!important}body{background:white}.section{padding:0}.container{max-width:none}.invoice{border:0;padding:0}.notice{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.section.container{padding-left:36px;padding-right:36px}@media(max-width:1000px){.section.container{padding-left:26px;padding-right:26px}}@media(max-width:650px){.section.container{padding-left:20px;padding-right:20px}}
@media(max-width:700px){.login-grid>.plan-panel{grid-row:1}.nav nav a.lang-switch{display:inline-flex!important;font-size:0;padding:7px 8px}.lang-switch:after{content:attr(data-short);font-size:10px}.nav nav{gap:7px}}
