/* Shared workspace presentation. Existing controllers, scope checks and saved records remain authoritative. */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=DM+Sans:wght@400;450;500;600;700&display=swap');
:is(.studio-body,.pro-connected,.admin-body,.oc-affiliate-workspace){--paper:#f6f4ed;--white:#fffef9;--ink:#223e34;--forest:#183b30;--green:#e8ebdf;--muted:#657065;--line:#dedfd2;--border:#dedfd2;--sans:'DM Sans',Arial,sans-serif;--serif:'Cormorant Garamond',Georgia,serif;--accent:#dae4c8;--accent-dark:#223e34;background:var(--paper);color:var(--ink);font-family:var(--sans)}
:is(.studio-body,.pro-connected,.admin-body,.oc-affiliate-workspace) :is(input,select,textarea,button){font-family:var(--sans)}
:is(.studio-body,.pro-connected,.admin-body,.oc-affiliate-workspace) :is(h1,h2,h3){font-family:var(--serif);font-weight:500;letter-spacing:-.035em;line-height:1.08}
:is(.studio-body,.pro-connected,.admin-body,.oc-affiliate-workspace) :is(button,a,input,select,textarea):focus-visible{outline:3px solid #a27e42;outline-offset:4px}
:is(.studio-body,.pro-connected,.admin-body,.oc-affiliate-workspace) :is(.button,.btn,.public-button){border-radius:5px;font-size:12px;min-height:44px;font-weight:500;box-shadow:none}
:is(.studio-body,.pro-connected,.admin-body,.oc-affiliate-workspace) :is(.button.primary,.btn.primary){background:#234637;color:#fffef7;border-color:#234637}
:is(.studio-body,.pro-connected,.admin-body,.oc-affiliate-workspace) :is(.panel,.pro-card,.stat,.affiliate-panel){border:1px solid var(--line);border-radius:8px;background:var(--white);box-shadow:0 4px 15px #223e3403}
:is(.studio-body,.pro-connected,.admin-body,.oc-affiliate-workspace) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){border-radius:4px;border-color:#ccd2c2;background:#fffefa;color:var(--ink)}
:is(.studio-body,.pro-connected,.admin-body,.oc-affiliate-workspace) :is(input,select,textarea):focus{border-color:#71876b}
:is(.studio-body,.pro-connected,.admin-body,.oc-affiliate-workspace) :is(.eyebrow,.sidebar-label){color:#927544;font-size:9px;letter-spacing:.16em}
:is(.studio-body,.pro-connected,.admin-body,.oc-affiliate-workspace) :is(dialog,.studio-dialog){border-radius:9px;border:1px solid var(--line);box-shadow:0 35px 90px #10291f40;color:var(--ink)}
:is(.studio-body,.pro-connected,.admin-body,.oc-affiliate-workspace) dialog::backdrop{background:#102a2466;backdrop-filter:blur(4px)}
.studio-body .studio-sidebar{background:#193b30;color:#edf0e2;border:0;width:246px;padding:32px 23px 22px}.studio-body .studio-sidebar .brand img{filter:brightness(0) invert(1);width:43px!important;height:29px!important}.studio-body .studio-sidebar .brand-name{font-family:var(--sans);color:#f8f5ea;font-size:29px;font-weight:500}.studio-body .sidebar-label{color:#bcba96;margin-top:38px}.studio-body .site-picker select{border:1px solid #ffffff32;background:#ffffff0c;color:#fffdf2;font-size:12px;border-radius:5px;min-height:45px}.studio-body .site-picker select option{background:#fffdf7;color:#203c34}.studio-body .studio-nav{gap:5px;margin-top:28px}.studio-body .studio-nav button{color:#d4ddce;border-radius:5px;min-height:48px;padding:13px 14px;font-size:12px;gap:12px}.studio-body .studio-nav button[aria-current]{background:#f1f0dd;color:#203c34}.studio-body .studio-nav button:hover:not([aria-current]){background:#ffffff10}.studio-body .sidebar-bottom{border-color:#ffffff25;margin-top:auto}.studio-body .sidebar-bottom p{font:italic 24px/1.15 var(--serif);letter-spacing:0;color:#d6d4b5}.studio-body .sidebar-bottom :is(a,button){font-size:11px;color:#d5ddca}.studio-body .studio-shell{margin-left:246px}.studio-body .studio-topbar{background:#faf8f1f2;border-bottom:1px solid var(--line);padding:20px 40px;min-height:80px;backdrop-filter:blur(15px)}.studio-body #mode-label{font-size:9px;letter-spacing:.15em;color:#747b6c}.studio-body #workspace{max-width:1400px;padding:35px 40px 60px}.studio-body .page-heading h1{font-family:var(--serif);font-size:51px;font-weight:500;letter-spacing:-.04em}.studio-body .page-heading p{font-size:13px;color:var(--muted)}.studio-body .stats article{border:1px solid var(--line);border-radius:7px;background:#fffef8;padding:24px}.studio-body .stats article:first-child{background:#e8ecdd}.studio-body .stats strong{font:48px/1 var(--serif);color:var(--ink)}.studio-body .stats span{font-size:11px}.studio-body .simple-overview{gap:24px}.studio-body .simple-overview .invitation-preview{border-radius:160px 160px 7px 7px;overflow:hidden;box-shadow:0 8px 30px #223e3409}.studio-body .next-steps h2{font-size:35px}.studio-body .next-action{border-radius:5px;min-height:50px}.studio-body .step{border-color:var(--line)}.studio-body .step strong{font-size:13px}.studio-body .reply-snapshot .panel{padding:26px}.studio-body .panel h2{font-size:32px}.studio-body .panel h3{font-size:25px}.studio-body .editor-tabs{background:#e9ecdf;border:1px solid var(--line);border-radius:5px;padding:4px}.studio-body .editor-tabs>button{border-radius:3px;font-size:12px;min-height:46px}.studio-body .editor-tabs>button[aria-selected=true]{box-shadow:0 2px 7px #203c340a}.studio-body .editor-section-intro h2{font-size:38px}.studio-body .editor-section>details>summary{font-size:14px;font-weight:500;padding:20px 0}.studio-body .studio-sharing-notice{border-radius:5px;background:#eeefe3;border:1px solid #d7dec9}.studio-body .studio-sharing-notice strong{font-size:12px}.studio-body .studio-sharing-notice p{font-size:11px}.studio-body .guests-tabs button,.studio-body .guest-tabs button{border-radius:4px}.studio-body .studio-footer{border-color:var(--line);font:italic 17px var(--serif);padding:20px 40px}.studio-body .studio-footer span{font:10px var(--sans);color:var(--muted)}
.pro-connected .prototype-bar{background:#eeeee2;border-color:var(--line);font-family:var(--sans);padding-inline:28px;min-height:40px;font-size:10px}.pro-connected .prototype-bar b{font-size:10px}.pro-connected .app-shell{grid-template-columns:246px minmax(0,1fr);min-height:calc(100vh - 40px)}.pro-connected #sidebar{background:#193b30;padding:18px 23px 30px;gap:6px}.pro-connected .pro-wordmark{font:500 32px var(--sans);letter-spacing:-.06em;padding:17px 8px 25px}.pro-connected .pro-wordmark small{font:9px var(--sans);letter-spacing:.12em;color:#d2cda8}.pro-connected #sidebar a:not(.pro-wordmark){font-size:12px;min-height:44px;padding:13px 13px;border-radius:5px}.pro-connected #sidebar a.active{background:#f1f0dd;color:#203c34}.pro-connected #sidebar select{border:1px solid #ffffff35;background:#ffffff0c;color:#fcf9ee;min-height:45px;border-radius:5px;font-size:12px}.pro-connected #sidebar select option{background:#fffdf7;color:#203c34}.pro-connected .topbar{background:#faf8f1f2;min-height:80px;padding:20px 40px;border-color:var(--line);backdrop-filter:blur(14px)}.pro-connected #breadcrumbs{font-size:11px}.pro-connected #account-actions{font-size:11px}.pro-connected #main{padding:35px 40px 60px;max-width:1400px}.pro-connected h1,.pro-connected .wedding-title{font:500 50px/1.04 var(--serif);letter-spacing:-.04em}.pro-connected h2{font-size:31px}.pro-connected h3{font-size:25px}.pro-connected .pro-card{padding:25px}.pro-connected .pro-card h2{font-family:var(--serif);font-size:30px}.pro-connected .pro-stat-number{font:47px/1 var(--serif)}.pro-connected .panel{padding:27px;margin:24px 0}.pro-connected .pro-grid:has(.pro-stat-number) .pro-card:first-child{background:#e8ecdd}.pro-connected .pro-card p{font-size:12px}.pro-connected .pro-quiet{border:1px solid #d8dec9;border-left:3px solid #a08452;border-radius:5px;background:#eeefe3;font-size:12px;line-height:1.7}.pro-connected .pro-section-tabs{gap:3px;padding:4px;border:1px solid var(--line);border-radius:6px;background:#e9ecdf;margin-block:25px}.pro-connected .pro-section-tabs a{border:0;border-radius:3px;font-size:11px;padding:13px 16px;min-height:43px;display:flex;align-items:center}.pro-connected .pro-section-tabs a.active{background:#fffefa;color:var(--ink);box-shadow:0 2px 5px #203c3410}.pro-connected th{background:#f1f3e9;font-size:9px;letter-spacing:.1em;padding:14px 12px;border-bottom:1px solid var(--line)}.pro-connected td{font-size:12px;padding:17px 12px}.pro-connected .workspace-footer{font:italic 16px var(--serif);padding:22px 40px;line-height:1.6;flex-wrap:wrap}.pro-connected .workspace-footer a{font-family:var(--sans);font-style:normal;font-size:10px}.pro-connected #dialog h2{font-size:35px}.pro-connected #save-bar{background:#193b30;border-top:1px solid #64755d}.pro-connected .status-line{border-radius:5px;background:#e9ecdf}.pro-connected .badge{font-size:9px;border-radius:4px}.pro-connected .wedding-hero{border-radius:6px}.pro-connected .wedding-hero h2{font-size:35px}
.admin-body .admin-shell{background:var(--paper)}.admin-body .admin-sidebar{background:#193b30;color:#edf0e2}.admin-body h1{font-size:47px}.admin-body .panel h2{font-size:32px}.admin-body .stats article{border-radius:6px;border:1px solid var(--line);background:#fffef9}.admin-body .stats strong{font:45px var(--serif)}
.oc-affiliate-workspace .affiliate-workspace{max-width:1260px;margin:auto;padding-top:50px}.oc-affiliate-workspace .workspace-heading{padding-bottom:30px;border-bottom:1px solid var(--line)}.oc-affiliate-workspace .workspace-heading h1{font-size:58px}.oc-affiliate-workspace .affiliate-panel{padding:32px}.oc-affiliate-workspace .affiliate-metrics{gap:18px}.oc-affiliate-workspace .affiliate-metrics article{background:#fffef9;border-radius:6px;padding:25px}.oc-affiliate-workspace .affiliate-metrics article:first-child{background:#e8ecdd}.oc-affiliate-workspace .affiliate-metrics strong{font:48px var(--serif)}.oc-affiliate-workspace .affiliate-metrics span{font-size:11px}.oc-affiliate-workspace .affiliate-code-card{background:#193b30;border-radius:6px;padding:32px}.oc-affiliate-workspace .affiliate-table-wrap th{background:#eef0e5}.oc-affiliate-workspace .affiliate-table-wrap td{font-size:12px}.oc-affiliate-workspace .affiliate-detail h3{font:31px var(--serif)}
.oc-workspace-brand{display:none}.oc-workspace-menu{display:none}
@media(min-width:801px){.studio-body .studio-topbar{position:sticky;top:0;z-index:20}.studio-body .studio-sidebar{overflow-y:auto}.pro-connected #sidebar{position:sticky;top:0;height:100vh;overflow-y:auto}.pro-connected .topbar{position:sticky;top:0;z-index:35}}
@media(max-width:1100px) and (min-width:801px){.studio-body .studio-sidebar{width:220px;padding-inline:18px}.studio-body .studio-shell{margin-left:220px}.studio-body #workspace,.pro-connected #main{padding-inline:26px}.pro-connected .app-shell{grid-template-columns:220px minmax(0,1fr)}.pro-connected #sidebar{padding-inline:18px}.studio-body .page-heading h1,.pro-connected h1{font-size:44px}.studio-body .stats article{padding:18px}.studio-body .stats strong{font-size:41px}}
@media(max-width:800px){
 .studio-body .studio-sidebar{position:fixed;inset:0 0 auto;width:100%;height:calc(72px + env(safe-area-inset-top));background:#f7f4edfa;border-bottom:1px solid var(--line);padding:12px 17px;padding-top:calc(12px + env(safe-area-inset-top));display:flex;flex-direction:row;gap:12px;align-items:center;z-index:100}.studio-body .studio-sidebar .brand img{filter:none;width:34px!important;height:26px!important}.studio-body .studio-sidebar .brand-name{color:#203c34;font-size:24px}.studio-body .studio-sidebar .brand{gap:4px}.studio-body .site-picker{max-width:none;flex:1;min-width:0}.studio-body .site-picker select{background:#e8ebdf;color:var(--ink);border:1px solid var(--line);font-size:12px;width:100%;padding-left:9px;min-height:42px}.studio-body .studio-sidebar .sidebar-label,.studio-body .studio-sidebar .sidebar-bottom,.studio-body .studio-sidebar .studio-nav{display:none}.studio-body .studio-shell{margin:calc(72px + env(safe-area-inset-top)) 0 0;padding-bottom:calc(78px + env(safe-area-inset-bottom))}.studio-body #workspace{padding:24px 18px 40px}.studio-body .page-heading h1{font-size:40px}.studio-body .page-heading p{font-size:12px}.studio-body .panel{padding:22px 18px}.studio-body .panel h2{font-size:30px}.studio-body .stats{gap:8px}.studio-body .stats article{padding:17px 12px}.studio-body .stats strong{font-size:36px}.studio-body .stats span{font-size:10px}.studio-body .editor-section-intro h2{font-size:34px}.studio-body .studio-footer{padding:20px 18px;font-size:15px}.studio-body .studio-topbar{display:none}.studio-body .mobile-dock{background:#f8f6edfa;z-index:100;border-color:var(--line);padding:5px 12px calc(7px + env(safe-area-inset-bottom))}.studio-body .mobile-dock button{border-radius:5px;font-size:10px;min-height:59px;gap:6px}.studio-body .mobile-dock button[aria-current]{background:#e4e9d6;color:#203c34}.studio-body .mobile-dock svg{width:21px;height:21px}.studio-body .studio-more{border-radius:14px}.studio-body .studio-more h2{font-size:31px}.studio-body .studio-more-links>button{border-radius:5px;font-size:14px}.studio-body .studio-more-links small{font-size:11px}.studio-body .oc-workspace-menu{display:block;flex:none;width:42px;height:42px;min-height:42px;border:1px solid var(--line);background:transparent;border-radius:50%;font-size:21px;color:var(--ink)}
 .pro-connected .prototype-bar{position:fixed;inset:0 0 auto;z-index:100;height:calc(64px + env(safe-area-inset-top));padding:12px 18px;padding-top:calc(12px + env(safe-area-inset-top));background:#f7f4edfa;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.pro-connected .prototype-bar .bar-detail{display:none}.pro-connected .prototype-bar>span>b{display:none}.pro-connected .prototype-bar>a{font-size:9px}.pro-connected .oc-workspace-brand{display:inline-flex;gap:8px;align-items:center;color:var(--ink);text-decoration:none}.pro-connected .oc-workspace-brand img{width:33px;height:25px;object-fit:contain}.pro-connected .oc-workspace-brand span{font:600 25px var(--sans);letter-spacing:-.05em}.pro-connected .oc-workspace-brand small{font:8px var(--sans);letter-spacing:.1em;margin-left:3px}.pro-connected .app-shell{display:block;padding-top:calc(64px + env(safe-area-inset-top))}.pro-connected .topbar{position:sticky;top:calc(64px + env(safe-area-inset-top));z-index:95;background:#f7f4edfa;min-height:63px;padding:10px 18px;gap:10px}.pro-connected .mobile-menu{display:block;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;font-size:20px}.pro-connected #breadcrumbs{font-size:10px}.pro-connected #account-actions>span{display:none}.pro-connected #account-actions .btn{font-size:10px;min-height:42px;padding:8px 11px}.pro-connected #sidebar{display:none}.pro-connected #sidebar.open{display:flex;position:fixed;inset:calc(127px + env(safe-area-inset-top)) 0 0;width:100%;height:auto;z-index:99;overflow-y:auto;padding:15px 22px 35px;gap:3px}.pro-connected #sidebar.open .pro-wordmark{display:none}.pro-connected #sidebar.open a:not(.pro-wordmark){min-height:46px;font-size:14px}.pro-connected #sidebar.open label{margin-top:8px}.pro-connected #sidebar.open select{max-width:100%;margin:5px 0 12px;font-size:14px}.pro-connected #main{padding:27px 18px 45px}.pro-connected h1,.pro-connected .wedding-title{font-size:39px}.pro-connected .panel{padding:21px 18px;margin-block:20px}.pro-connected h2,.pro-connected .pro-card h2{font-size:29px}.pro-connected .pro-card{padding:20px}.pro-connected .pro-grid{gap:10px}.pro-connected .pro-grid:has(.pro-stat-number) .pro-card{padding:17px 12px}.pro-connected .pro-stat-number{font-size:36px}.pro-connected .pro-card p{font-size:11px}.pro-connected .pro-section-tabs{border-radius:5px;scroll-margin-top:145px}.pro-connected .pro-section-tabs a{font-size:11px;padding:12px;min-height:44px}.pro-connected .workspace-footer{padding:20px 18px;font-size:14px}.pro-connected #save-bar{z-index:101}.pro-connected .pro-permissions{grid-template-columns:1fr}.pro-connected input:not([type=checkbox]),.pro-connected textarea{font-size:16px}.pro-connected .table-wrap{max-width:100%;overscroll-behavior-x:contain}.oc-affiliate-workspace .affiliate-workspace{padding-top:32px}.oc-affiliate-workspace .workspace-heading h1{font-size:44px}.oc-affiliate-workspace .affiliate-panel{padding:23px 18px}.oc-affiliate-workspace .affiliate-metrics{gap:10px}.oc-affiliate-workspace .affiliate-metrics article{padding:18px 13px}.oc-affiliate-workspace .affiliate-metrics strong{font-size:37px}.oc-affiliate-workspace .affiliate-code-card{padding:24px}.admin-body h1{font-size:37px}
}
@media(prefers-reduced-motion:reduce){:is(.studio-body,.pro-connected,.admin-body,.oc-affiliate-workspace) *{scroll-behavior:auto!important;transition:none!important}}
