.sap-portal{max-width:1380px;margin:30px auto;font-family:inherit}.sap-guide-nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 28px}.sap-guide-nav a{padding:10px 14px;border:1px solid #ddd;border-radius:8px;text-decoration:none}.sap-guide-nav a.active{background:var(--sap-accent,#1f4e79);color:#fff;border-color:var(--sap-accent,#1f4e79)}.sap-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:34px}.sap-card{border:1px solid #e5e5e5;border-radius:12px;padding:16px 18px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.04)}.sap-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #eee;padding-bottom:12px;margin-bottom:12px}.sap-card h4{margin:0;font-size:18px}.sap-status{font-size:12px;padding:5px 8px;border-radius:999px;background:#eee;white-space:nowrap}.sap-complete,.sap-laid_out{background:#e8f7ed;color:#176b31}.sap-partial,.sap-new_version_review{background:#fff4d9;color:#795700}.sap-in_layout{background:#e8f1ff;color:#174f96}.sap-upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sap-upload-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sap-upload-count-1{grid-template-columns:1fr}.sap-upload-row{padding:12px;border:1px solid #eceff2;border-radius:9px;background:#fafbfc;min-width:0}.sap-upload-meta{margin-bottom:8px}.sap-upload-row small{display:block;color:#666;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sap-upload-form{display:block}.sap-dropzone{min-height:92px;border:2px dashed #cfd5db;border-radius:9px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:12px;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.sap-dropzone:hover,.sap-dropzone:focus,.sap-dropzone.is-dragover{border-color:var(--sap-accent,#1f4e79);background:color-mix(in srgb,var(--sap-accent,#1f4e79) 7%,#fff);outline:none}.sap-dropzone.is-dragover{transform:translateY(-1px)}.sap-dropzone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.sap-drop-icon{font-size:25px;line-height:1;color:var(--sap-accent,#1f4e79);margin-bottom:5px}.sap-drop-title{font-size:13px;font-weight:700;color:#222}.sap-drop-help{font-size:12px;color:#717780;margin-top:3px}.sap-progress{margin-top:9px}.sap-progress-track{height:8px;border-radius:999px;background:#e2e6e9;overflow:hidden}.sap-progress-bar{display:block;height:100%;width:0;background:var(--sap-accent,#1f4e79);transition:width .12s linear}.sap-progress-text{font-size:11px;color:#666;text-align:right;margin-top:2px}.sap-upload-message{min-height:17px;margin-top:4px;font-size:12px}.sap-upload-message.is-working{color:#666}.sap-upload-message.is-success{color:#176b31;font-weight:600}.sap-upload-message.is-error{color:#9b1c1c;font-weight:600}.sap-upload-form.is-uploading .sap-dropzone{opacity:.7;cursor:wait}.sap-upload-row noscript button{margin-top:8px;border:0;border-radius:7px;padding:9px 12px;background:var(--sap-accent,#1f4e79);color:#fff;cursor:pointer}.sap-box{padding:18px;border:1px solid #ddd;border-radius:10px}.sap-error{border-color:#c00;color:#900}@media(max-width:900px){.sap-upload-grid,.sap-upload-count-2{grid-template-columns:1fr}.sap-card-head{align-items:flex-start}.sap-status{white-space:normal}}

.sap-portal-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.sap-logout{font-size:13px;text-decoration:none;color:var(--sap-accent,#1f4e79)}
.sap-login-wrap{max-width:520px;margin:50px auto}.sap-login-card{background:#fff;border:1px solid #e5e5e5;border-radius:14px;padding:30px;box-shadow:0 8px 30px rgba(0,0,0,.07)}.sap-login-card h2{margin-top:0}.sap-login-card p{margin-bottom:18px}.sap-login-card label{display:block;font-weight:600;margin-bottom:6px}.sap-login-card .login-username,.sap-login-card .login-password{margin-bottom:16px}.sap-login-card input[type=text],.sap-login-card input[type=password]{box-sizing:border-box;width:100%;padding:12px 13px;border:1px solid #ccd2d8;border-radius:8px;background:#fff}.sap-login-card .login-remember label{font-weight:400;display:flex;gap:8px;align-items:center}.sap-login-card .login-submit{margin:18px 0 0}.sap-login-card input[type=submit]{width:100%;border:0;border-radius:8px;padding:12px 16px;background:var(--sap-accent,#1f4e79);color:#fff;font-weight:700;cursor:pointer}.sap-login-links{text-align:center;margin:15px 0 0!important;font-size:13px}.sap-login-links a{color:var(--sap-accent,#1f4e79)}

/* 0.7.0 portal sorting, status and contributors */
.sap-portal-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 18px;padding:12px 14px;border:1px solid #e5e8eb;border-radius:10px;background:#fafbfc}.sap-toolbar-count{margin-left:10px;color:#72777d;font-size:12px}.sap-sort-form{display:flex;align-items:center;gap:8px}.sap-sort-form label{font-size:12px;font-weight:700;color:#555}.sap-sort-form select{min-width:220px;padding:8px 34px 8px 10px;border:1px solid #ccd2d8;border-radius:7px;background:#fff}.sap-card-title-wrap{min-width:0}.sap-card-kicker{text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700;color:#838a91;margin-bottom:3px}.sap-status-group{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.sap-delivery-complete{background:#e8f7ed;color:#176b31}.sap-delivery-partial{background:#fff4d9;color:#795700}.sap-delivery-not_started{background:#f1f2f4;color:#5d6369}.sap-layout-not_started{background:#f1f2f4;color:#5d6369}.sap-layout-in_progress{background:#e8f1ff;color:#174f96}.sap-layout-finished{background:#e8f7ed;color:#176b31}.sap-contributors{color:#444!important;font-weight:600}.sap-guide-list{margin-top:0}
@media(max-width:760px){.sap-portal-toolbar{align-items:flex-start;flex-direction:column}.sap-sort-form{width:100%;align-items:flex-start;flex-direction:column}.sap-sort-form select{width:100%;min-width:0}.sap-card-head{flex-direction:column}.sap-status-group{justify-content:flex-start}}

/* 0.9.0 generic project templates */
.sap-guide-nav a small{display:block;font-size:9px;line-height:1.2;text-transform:uppercase;letter-spacing:.05em;opacity:.7;margin-bottom:2px}.sap-project-type{font-size:12px;font-weight:700;color:#697078;text-transform:uppercase;letter-spacing:.05em}.sap-new-order{border:1px solid #dfe4e8;border-radius:12px;background:#fff;margin:0 0 18px;padding:0 16px}.sap-new-order summary{cursor:pointer;font-weight:700;padding:15px 0;color:var(--sap-accent,#1f4e79)}.sap-new-order form{padding:0 0 18px}.sap-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-bottom:15px}.sap-field{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600}.sap-field input,.sap-field select,.sap-field textarea{box-sizing:border-box;width:100%;padding:9px 10px;border:1px solid #ccd2d8;border-radius:7px;background:#fff;font:inherit;font-weight:400}.sap-field textarea{min-height:82px;resize:vertical}.sap-primary-button{border:0;border-radius:8px;padding:10px 16px;background:var(--sap-accent,#1f4e79);color:#fff;font-weight:700;cursor:pointer}.sap-order-data{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 14px;margin:0 0 14px;padding:12px;background:#fafbfc;border:1px solid #eceff2;border-radius:9px}.sap-order-data div{min-width:0}.sap-order-data strong,.sap-order-data span{display:block}.sap-order-data strong{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#737a81;margin-bottom:2px}.sap-order-data span{font-size:13px;overflow-wrap:anywhere}@media(max-width:760px){.sap-fields-grid,.sap-order-data{grid-template-columns:1fr}}
.sap-edit-order{margin:0 0 14px;border-top:1px solid #eceff2;padding-top:8px}.sap-edit-order summary{cursor:pointer;color:var(--sap-accent,#1f4e79);font-size:12px;font-weight:700;margin-bottom:10px}.sap-edit-order form{padding:6px 0 10px}.sap-locked-note{font-size:12px;color:#6b7279;margin:0 0 14px;padding:9px 11px;background:#f3f4f5;border-radius:7px}


/* 0.9.1 logo-order creation */
.sap-initial-upload{margin:4px 0 16px}.sap-initial-upload-title{display:flex;gap:8px;align-items:baseline;margin-bottom:7px}.sap-initial-upload-title strong{font-size:13px}.sap-initial-upload-title span{font-size:12px;color:#737a81}.sap-order-dropzone{min-height:105px;border:2px dashed #cfd5db;border-radius:9px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:14px;cursor:pointer;transition:border-color .18s ease,background .18s ease}.sap-order-dropzone:hover,.sap-order-dropzone:focus,.sap-order-dropzone.is-dragover,.sap-order-dropzone.has-file{border-color:var(--sap-accent,#1f4e79);background:color-mix(in srgb,var(--sap-accent,#1f4e79) 6%,#fff);outline:none}.sap-order-dropzone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.sap-order-file-name{display:block;margin-top:7px;font-size:12px;font-weight:700;color:var(--sap-accent,#1f4e79);overflow-wrap:anywhere}.sap-new-order-form .sap-primary-button{margin-top:2px}

/* Reisgids-statussen: productie in een oogopslag */
.sap-status-group{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.sap-delivery-complete,.sap-layout-finished{background:#23864b!important;color:#fff!important;border:1px solid #23864b!important;font-weight:800!important;padding:6px 10px!important}
.sap-delivery-complete::before,.sap-layout-finished::before{content:'✓';display:inline-block;margin-right:6px;color:#fff;font-size:17px;font-weight:900;line-height:.7;vertical-align:-1px}
.sap-layout-status-form{display:inline;margin:0}
.sap-layout-action{appearance:none;border:0;font:inherit;line-height:1.2;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}
.sap-layout-action:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(0,0,0,.12)}
.sap-layout-action:focus-visible{outline:2px solid var(--sap-accent,#1f4e79);outline-offset:2px}
/* Front-end beheer 0.12 */
.sap-top-actions{display:flex;gap:10px;align-items:center}.sap-manage-link{display:inline-flex;align-items:center;padding:8px 11px;border-radius:9px;background:#fff;color:var(--sap-accent);text-decoration:none;font-weight:700;border:1px solid #dbe3ea}.sap-manager{max-width:1240px;margin:0 auto;padding:22px}.sap-manager-hero{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px 26px;border-radius:18px;background:linear-gradient(135deg,var(--sap-accent),#132638);color:#fff}.sap-manager-hero h2{margin:3px 0 4px;color:#fff;font-size:30px}.sap-manager-hero p{margin:0;opacity:.82}.sap-manager-eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;opacity:.7}.sap-btn-ghost{display:inline-flex;padding:9px 12px;border-radius:9px;background:#fff;color:#243746!important;text-decoration:none;font-weight:700;border:1px solid #dbe3ea}.sap-manager-tabs{display:flex;gap:6px;margin:18px 0 24px;padding:5px;background:#eef2f5;border-radius:12px;width:max-content;max-width:100%;overflow:auto}.sap-manager-tabs a{padding:9px 13px;border-radius:9px;text-decoration:none;color:#53616d;font-weight:700;white-space:nowrap}.sap-manager-tabs a.active{background:#fff;color:#18232d;box-shadow:0 1px 5px rgba(0,0,0,.08)}.sap-manager-section-head,.sap-manager-project-head{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:18px 0}.sap-manager-section-head h3,.sap-manager-project-head h3{font-size:25px;margin:0 0 3px}.sap-manager-section-head p,.sap-manager-project-head p{margin:0;color:#6b7782}.sap-manager-primary{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:9px;padding:10px 14px;background:var(--sap-accent);color:#fff!important;text-decoration:none;font-weight:750;cursor:pointer}.sap-manager-projects{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.sap-manager-project{display:flex;flex-direction:column;gap:5px;padding:18px;border:1px solid #e0e6eb;border-radius:14px;background:#fff;text-decoration:none;color:#17232d;box-shadow:0 3px 15px rgba(0,0,0,.035)}.sap-manager-project:hover{border-color:var(--sap-accent);transform:translateY(-1px)}.sap-manager-project strong{font-size:18px}.sap-manager-project small{color:#6b7782}.sap-manager-type{display:inline-flex;align-self:flex-start;padding:4px 8px;border-radius:999px;background:#edf2f7;color:#506071;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.sap-manager-stats{margin-top:8px;color:#697683;font-size:12px}.sap-manager-breadcrumb{display:flex;gap:8px;align-items:center;color:#7a8791;font-size:13px}.sap-manager-breadcrumb a{color:var(--sap-accent);text-decoration:none}.sap-manager-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:16px;align-items:start}.sap-manager-card{background:#fff;border:1px solid #e0e6eb;border-radius:14px;padding:18px;box-shadow:0 3px 15px rgba(0,0,0,.03)}.sap-manager-card h4{font-size:18px;margin:0 0 4px}.sap-manager-card p{color:#6c7884}.sap-access-row{border-top:1px solid #edf0f3}.sap-access-row:first-of-type{border-top:0}.sap-access-row summary{display:grid;grid-template-columns:38px minmax(150px,1fr) auto minmax(180px,1.4fr) 24px;gap:10px;align-items:center;padding:13px 2px;cursor:pointer;list-style:none}.sap-access-row summary::-webkit-details-marker{display:none}.sap-user-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e9eef3;font-weight:800;color:#42515f}.sap-access-who{display:flex;flex-direction:column}.sap-access-who small{color:#798590}.sap-role-pill{padding:4px 8px;border-radius:999px;background:#eaf3ff;color:#275d8d;font-size:11px;font-weight:800}.sap-access-summary{font-size:12px;color:#6d7881}.sap-chevron{font-size:18px;color:#75808a}.sap-access-editor{padding:3px 0 16px 48px}.sap-access-fields{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(180px,1fr) minmax(220px,1.4fr);gap:15px;background:#f7f9fb;border-radius:11px;padding:14px}.sap-access-fields>label,.sap-access-fields fieldset{display:flex;flex-direction:column;gap:6px;border:0;margin:0;padding:0}.sap-access-fields legend,.sap-access-fields>label>span{font-size:12px;font-weight:800;color:#55636e;margin-bottom:3px}.sap-access-fields select,.sap-add-access select,.sap-add-access input{border:1px solid #ccd5dd;border-radius:8px;padding:9px;background:#fff}.sap-access-fields fieldset label,.sap-add-access label{font-size:13px;display:block}.sap-field-help{font-size:11px!important;margin:0 0 4px!important}.sap-access-actions{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.sap-danger-link{border:0;background:none;color:#a62e2e;font-weight:700;cursor:pointer}.sap-add-access{margin-top:15px;border-top:1px solid #e7ebee;padding-top:12px}.sap-add-access summary{font-weight:800;color:var(--sap-accent);cursor:pointer}.sap-add-access-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:12px}.sap-add-access-grid form{display:grid;gap:9px;padding:14px;background:#f7f9fb;border-radius:11px}.sap-add-access-grid h5{margin:0;font-size:15px}.sap-add-access-grid small{color:#75818b}.sap-manager-dl{display:grid;gap:3px}.sap-manager-dl div{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #edf0f2}.sap-manager-dl dt{color:#78838d}.sap-manager-dl dd{margin:0;font-weight:800}.sap-manager-note{font-size:12px;background:#f6f8fa;padding:10px;border-radius:9px}.sap-manager-customers{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}.sap-mini-list{display:grid;gap:6px}.sap-mini-list span{display:flex;justify-content:space-between;gap:8px;padding:7px 0;border-top:1px solid #edf0f2}.sap-mini-list small{color:#7c8790}.sap-manager-user-table{background:#fff;border:1px solid #e0e6eb;border-radius:14px;overflow:hidden}.sap-table-head,.sap-table-row{display:grid;grid-template-columns:1.2fr .8fr 1.6fr;gap:15px;padding:12px 15px;align-items:start}.sap-table-head{background:#f4f7f9;font-size:11px;font-weight:800;text-transform:uppercase;color:#687681}.sap-table-row{border-top:1px solid #edf0f2}.sap-table-row>span{display:flex;flex-direction:column;gap:3px}.sap-table-row small{color:#7d8790}.sap-table-row a{display:flex;justify-content:space-between;text-decoration:none;color:#253746;padding:3px 0}.sap-table-row em{font-style:normal;color:#7a8792;font-size:11px}.sap-manager-empty{padding:18px;background:#f7f9fb;border-radius:10px;color:#77828c}.sap-card-title{display:flex;justify-content:space-between}.sap-card-title p{margin:0 0 10px;font-size:12px}@media(max-width:850px){.sap-manager-grid{grid-template-columns:1fr}.sap-access-row summary{grid-template-columns:38px 1fr auto 20px}.sap-access-summary{display:none}.sap-access-editor{padding-left:0}.sap-access-fields{grid-template-columns:1fr}.sap-add-access-grid{grid-template-columns:1fr}.sap-table-head,.sap-table-row{grid-template-columns:1fr}.sap-table-head{display:none}.sap-manager-hero{align-items:flex-start;flex-direction:column}}
.sap-new-project-card{margin:-8px 0 18px;padding:0;border:1px solid #dce4ea;border-radius:13px;background:#fff;overflow:hidden}.sap-new-project-card summary{padding:13px 16px;font-weight:800;cursor:pointer;background:#f7f9fb}.sap-new-project-card form{display:grid;grid-template-columns:1fr 1fr 1.3fr .6fr;gap:12px;align-items:end;padding:16px}.sap-new-project-card label{display:grid;gap:5px}.sap-new-project-card label span{font-size:11px;font-weight:800;color:#64727d}.sap-new-project-card input,.sap-new-project-card select{width:100%;border:1px solid #ccd5dd;border-radius:8px;padding:9px;background:#fff}@media(max-width:850px){.sap-new-project-card form{grid-template-columns:1fr}}

/* 0.12.1 branded login / password flow */
.sap-login-brand{font-size:22px;font-weight:850;letter-spacing:-.02em;color:var(--sap-accent);margin-bottom:26px}.sap-login-brand span{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#89949c;margin-top:1px}.sap-login-card h2{font-size:27px;line-height:1.15;margin-bottom:10px}.sap-login-card>p{color:#687680}.sap-login-card form>label{display:block;font-size:13px;font-weight:800;color:#44525d;margin:15px 0 6px}.sap-login-card form>input[type=text],.sap-login-card form>input[type=password]{box-sizing:border-box;width:100%;padding:12px 13px;border:1px solid #ccd5dc;border-radius:9px;background:#fff;font-size:15px}.sap-login-action{width:100%;border:0;border-radius:9px;padding:13px 16px;margin-top:20px;background:var(--sap-accent);color:#fff;font-weight:800;font-size:14px;cursor:pointer}.sap-login-notice{padding:11px 13px;border-radius:9px;margin:15px 0;font-size:13px}.sap-login-notice.sap-success{background:#eaf7ef;border:1px solid #b8dfc7;color:#24633d}.sap-login-help{font-size:12px!important;color:#7c8891!important;margin-top:12px!important}.sap-login-card .login-username label,.sap-login-card .login-password label{font-size:13px}.sap-login-card .login-submit input{font-size:14px}.sap-login-card{border:0;border-radius:16px;padding:34px 36px;box-shadow:0 12px 40px rgba(28,48,64,.10)}
