:root{font-family:system-ui,sans-serif;color:#243b35;background:#f5f3ec}*{box-sizing:border-box}body{margin:0}main{max-width:960px;margin:40px auto;padding:24px}h1{font:38px Georgia,serif;margin-bottom:10px}h2{font:25px Georgia,serif}header p{color:#64726c}form,article{background:white;border:1px solid #d8ded8;border-radius:18px;padding:22px;margin:20px 0}label{display:block;margin:12px 0}input{display:block;width:100%;padding:13px;font:inherit;border:1px solid #b7c7bd;border-radius:9px;margin-top:6px}button,.button{display:inline-block;padding:12px 18px;font:inherit;background:#284c3d;color:white;border:0;border-radius:10px;cursor:pointer;text-decoration:none}button:disabled{opacity:.5;cursor:wait}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px}#status{padding:14px;background:#e7ede5;border-radius:12px;white-space:pre-line}#status[data-error=true]{background:#ffebe7;color:#842b24}[hidden]{display:none!important}.muted{color:#68746d}details{margin-top:18px}small{display:block;margin:10px 0}@media(max-width:500px){main{margin:10px auto;padding:16px}h1{font-size:30px}.toolbar>*{max-width:100%}}

/* Pronify account shell. Restaurant editor and guest menu use separate styles. */
:root{color:#302d28;background:#f5f3ef;font-family:Inter,system-ui,sans-serif}
body{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}
.portal-sidebar{background:#211f1b;color:#eee8dc;padding:34px 22px;display:flex;flex-direction:column;gap:24px}
.portal-brand{text-decoration:none;color:#fff;font-size:27px;letter-spacing:-1px}.portal-brand span{color:#d9b475;font-weight:300}
.portal-sidebar p{color:#b6afa1;font-size:13px}.portal-sidebar nav{display:grid;gap:8px}
.portal-sidebar button{text-align:left;background:transparent;color:#d9d4ca;padding:14px}
.portal-sidebar button[aria-current=true]{background:#d9b475;color:#211f1b}.portal-foot{margin-top:auto}
main{width:100%;max-width:1280px;margin:0 auto;padding:42px}
h1,h2{font-family:inherit;letter-spacing:-.6px}h1{font-size:32px;margin:0 0 12px}h2{font-size:23px}
header{margin-bottom:26px}header p,.muted{color:#7a756c}
button,.button{background:#302c25;border-radius:10px}button:hover,.button:hover{filter:brightness(1.15)}
button:focus-visible,a:focus-visible{outline:3px solid #b88d46;outline-offset:3px}
#new-restaurant,#create button{background:#d9b475;color:#27231e;font-weight:600}
#status{background:#eeeae2;color:#6b6254;font-size:14px;border:1px solid #e3ddd1}
#identity{overflow-wrap:anywhere}.toolbar{gap:10px}#logout{margin-left:auto;background:#e9e3d9;color:#433c31}
#workspace-switch{display:none}#create{max-width:640px;border-color:#d9b475}
.restaurant-filter{display:flex;align-items:center;gap:24px;margin:24px 0}.restaurant-filter label{flex:1;max-width:520px}.restaurant-filter span{color:#7a756c;font-size:14px}
input,select{font:inherit;border:1px solid #dcd5c9;background:#fff;border-radius:9px;padding:12px;max-width:100%;min-width:0}
#restaurants{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:20px}
#restaurants>article{margin:0;border:1px solid #e5dfd5;padding:26px;border-radius:18px;min-width:0;box-shadow:0 6px 24px #302d2805}
#restaurants>article>p{font-size:14px;color:#7a756c}#restaurants>article>label{font-size:13px;margin-top:24px}
#restaurants .button{font-size:14px}#restaurants form{padding:16px;margin:12px 0}#restaurants input[type=file]{font-size:12px}
#cloud-materials-admin{display:none}
body[data-view=library] #cloud-materials-admin{display:block}
body[data-view=library] #restaurants,body[data-view=library] .restaurant-filter,body[data-view=library] #create{display:none}
body[data-view=access] #restaurants>article>label,body[data-view=access] #restaurants>article>.toolbar{display:none}
body[data-view=access] #create{display:none}
@media(max-width:800px){body{grid-template-columns:1fr}.portal-sidebar{padding:20px;gap:8px}.portal-sidebar nav{display:flex;flex-wrap:wrap}.portal-sidebar button{font-size:13px;padding:10px}.portal-foot{display:none}main{padding:24px 18px}h1{font-size:27px}.restaurant-filter{gap:12px}.portal-sidebar p{margin:4px 0}}

body[data-view=studio] #restaurants,body[data-view=studio] .restaurant-filter,body[data-view=studio] #create,body[data-view=studio] #restaurant-trash{display:none}#admin-studio{margin-top:28px}#admin-studio>p{max-width:720px;line-height:1.6}#admin-studio form{max-width:640px}#admin-studio article{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}


/* Compact searchable restaurant list. */
#restaurants{grid-template-columns:1fr;gap:10px}
#restaurants>article{padding:0;overflow:hidden;border-radius:14px}
.restaurant-heading{display:flex;align-items:center;gap:16px;padding:16px 20px}
.restaurant-expand{display:flex;align-items:center;justify-content:space-between;gap:20px;flex:1;min-width:0;text-align:left;background:transparent;color:inherit;padding:4px}
.restaurant-expand:hover{background:#f5f1e9;filter:none}.restaurant-expand>span:first-child{min-width:0}
.restaurant-expand h2{font-size:19px;margin:0 0 6px;overflow-wrap:anywhere}.restaurant-expand p{font-size:13px;color:#7a756c;margin:0}
.restaurant-expand>span:last-child{font-size:13px;white-space:nowrap;color:#67512c}.restaurant-expand>span:last-child:after{content:' ▾'}
.restaurant-expand[aria-expanded=true]>span:last-child:after{content:' ▴'}
.restaurant-heading>.button{flex-shrink:0}.restaurant-body{padding:20px;border-top:1px solid #e5dfd5}.restaurant-body>label{font-size:13px;margin-top:20px}
.restaurant-filter{flex-wrap:wrap;gap:12px}.restaurant-filter label{min-width:220px;margin:0;max-width:none}.restaurant-filter button{font-size:13px;padding:10px 12px;background:#e9e3d9;color:#433c31}
body[data-view=access] .restaurant-body>label,body[data-view=access] .restaurant-body>.toolbar{display:none}
body[data-view=library] #restaurant-empty,body[data-view=studio] #restaurant-empty{display:none}
@media(max-width:550px){.restaurant-heading{flex-wrap:wrap;padding:14px}.restaurant-expand{flex-basis:100%}.restaurant-heading>.button{padding:9px 12px}.restaurant-body{padding:14px}.restaurant-filter label{flex-basis:100%}}


.metrics-dialog{width:min(1120px,96vw);max-height:90vh;border:1px solid #ded5c6;border-radius:20px;padding:26px;background:#faf8f3;color:#302d28}.metrics-dialog::backdrop{background:#211f1b99}.metrics-dialog>button{float:right}.metrics-dialog p{line-height:1.5;color:#70685c;font-size:14px}.metrics-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}.metrics-cards section{padding:22px;background:#eee7db;border-radius:14px}.metrics-cards strong{display:block;font-size:32px}.metrics-cards span{font-size:13px}.metrics-scroll{overflow:auto}.metrics-dialog table{border-collapse:collapse;width:100%;font-size:13px}.metrics-dialog th,.metrics-dialog td{text-align:left;padding:12px;border-bottom:1px solid #e2dace}.metrics-dialog th{background:#eee7db}.metrics-chart>div{display:grid;grid-template-columns:100px 1fr 60px;gap:12px;align-items:center;margin:9px 0;font-size:13px}.metrics-bar{display:block;height:18px;background:#b99b67;border-radius:4px}.metrics-dialog form{max-width:600px}@media(max-width:600px){.metrics-cards{grid-template-columns:1fr}.metrics-dialog{padding:16px}.metrics-dialog h2{font-size:20px}}

/* Approved gold P/fork wordmark; caption stays live and localized. */
@media screen{
.portal-brand,body.pronify-studio .sidebar .brand{display:flex;flex-direction:column;align-items:flex-start;gap:12px;white-space:normal;letter-spacing:normal;line-height:1.45;max-width:100%;text-decoration:none}
body.pronify-studio .sidebar .brand{margin:0 0 22px}
.pronify-logo-image{display:block;width:100%;max-width:240px;height:auto;object-fit:contain}
.portal-brand .pronify-tagline,body.pronify-studio .sidebar .brand .pronify-tagline{display:block;color:#d6c4a6;font:400 11px/1.65 system-ui,sans-serif;letter-spacing:.1px;white-space:normal;padding:0;background:none}
@media(max-width:800px){.portal-brand{max-width:260px}}
@media(max-width:760px){body.pronify-studio .sidebar .brand{max-width:250px;margin:0 0 10px}.pronify-logo-image{max-width:210px}}
}

#sample-restaurants{margin-top:36px;border-top:1px solid #e5dfd5;padding-top:22px}
#sample-restaurants>article{padding:0;overflow:hidden;margin:10px 0;border-radius:14px}
#sample-restaurants .restaurant-heading{flex-wrap:wrap}
#sample-restaurants .restaurant-heading>span{font-size:12px;padding:5px 10px;background:#eee7db;border-radius:20px;color:#67512c}
#sample-restaurants .restaurant-heading>button:last-child{font-size:13px}
body:not([data-view=restaurants]) #sample-restaurants{display:none}
