/* FlinkDoku 0.10: generous gallery layout, visual choices and a right drawer.
   Inspired by the composition of Wired Avenue; original branding and assets. */
:root{--fd-ink:#242b43;--fd-muted:#627080;--fd-line:#e5e9ef;--fd-paper:#fff;--fd-cyan:#0788a4;--fd-cyan-dark:#056b82}
.fd-body{background:#f0f4f8;color:var(--fd-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.fd-body h1,.fd-body h2,.fd-body h3{color:var(--fd-ink)}
.fd-btn{border-radius:999px;box-shadow:none;transition:background .15s,border-color .15s,box-shadow .15s;letter-spacing:0}
.fd-primary{background:#087f99;border-color:#087f99;color:#fff;box-shadow:0 5px 16px #087f991b;padding-inline:23px}
.fd-primary:hover{background:#066c84;border-color:#066c84;box-shadow:0 7px 18px #087f9929}
.fd-icon-btn{border-radius:50%;padding:10px}.fd-link-btn{border:0;background:transparent;box-shadow:none}
.fd-main{margin-left:0;min-height:100dvh}
.fd-topbar{height:86px;padding:0 clamp(22px,5vw,80px);display:flex;gap:24px;background:#ffffffed;backdrop-filter:blur(14px);border-bottom:1px solid #edf0f4;position:sticky;top:0;z-index:20}
.fd-topbar>.fd-brand,.fd-topbar>.fd-icon-btn{display:flex}.fd-topbar>.fd-brand{margin-right:auto}
.fd-topbar .fd-brand strong{font-size:27px;letter-spacing:-1px;font-weight:720}.fd-topbar .fd-logo{width:43px;height:43px;border-radius:13px;background:linear-gradient(145deg,#16b4d2,#077c9e)}
.fd-topbar .fd-logo svg{width:30px;height:30px}.fd-topbar .fd-save-state{font-size:12px;margin-left:0;color:#667788;gap:8px}
.fd-menu-toggle{display:flex;gap:13px;align-items:center;background:transparent;border:0;font-weight:500;font-size:14px;padding:10px 2px 10px 16px;min-width:90px;color:#2d3550}
.fd-menu-toggle svg{width:28px;height:28px;stroke-width:1.4}
.fd-page{max-width:1220px;margin:0 auto;padding:38px 36px 76px}
.fd-body .fd-page-heading h1{font-size:clamp(30px,3vw,42px);line-height:1.2;font-weight:550;letter-spacing:-1.2px}
.fd-page-heading{margin:22px 0 38px;gap:24px;align-items:center}.fd-page-heading p{max-width:740px}
.fd-eyebrow{font-size:10px;letter-spacing:2px;font-weight:650;color:#118197;margin-bottom:13px}
.fd-heading-subline{font-size:13px!important;line-height:1.6;color:#687789;margin:12px 0 0}
.fd-heading-actions{gap:10px;align-items:center}.fd-project-description{font-size:16px;line-height:1.6;margin-top:16px}
.fd-overview-page{padding-top:54px}
.fd-overview-heading{flex-direction:column;text-align:center;align-items:center;gap:24px;margin:0 0 66px}
.fd-body .fd-overview-heading h1{font-size:clamp(40px,4.5vw,62px);font-weight:400;letter-spacing:-2px;margin:8px 0 20px}
.fd-overview-heading p.fd-muted{font-size:21px;line-height:1.6;margin:0;color:#586478}
.fd-overview-heading .fd-heading-subline{font-size:15px!important;margin-top:7px;color:#707c8c}
.fd-overview-heading>.fd-btn{align-self:center;min-height:48px}
.fd-breadcrumbs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;line-height:1.5;color:#758292;min-height:38px;margin-bottom:16px}
.fd-breadcrumbs .fd-btn{min-height:36px;padding:5px 0;font-size:12px;color:#397389;font-weight:500}
.fd-breadcrumbs>span[aria-current]{color:#536172;overflow-wrap:anywhere;max-width:100%}
.fd-section-heading{margin-bottom:25px;align-items:center;gap:18px}.fd-section-heading h2{font-size:22px;font-weight:500;letter-spacing:-.5px}
.fd-count{font-size:11px;background:#eef4f7;color:#617485;margin-left:6px;padding:4px 8px;font-weight:500}
.fd-search{border-color:#e4e9ef;background:#fbfcfe;border-radius:12px;min-height:49px;max-width:380px}.fd-search input{background:transparent}
.fd-project-grid,.fd-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;align-items:start}
.fd-project-tile,.fd-photo-card{background:#fff;border:1px solid #d8e2eb;border-radius:15px;overflow:hidden;box-shadow:0 7px 25px #24335412;transition:box-shadow .18s,border-color .18s}
.fd-project-tile:hover,.fd-photo-card:hover{box-shadow:0 13px 34px #24335416;border-color:#c6dde4}
.fd-project-card{border:0;border-radius:0;box-shadow:none;padding:0;min-height:0;width:100%;height:auto;background:#fff;display:block;text-align:left}
.fd-project-card:hover{border:0;transform:none;box-shadow:none;background:#fff}
.fd-project-cover{height:260px;width:100%;position:relative;overflow:hidden;background:#eff5f8;display:grid;place-items:center}
.fd-project-cover>img,.fd-project-cover>video{width:100%;height:260px;object-fit:cover;display:block}
.fd-project-cover>.fd-pdf-thumbnail,.fd-project-cover>.fd-map-thumbnail{width:100%;height:260px}
.fd-project-cover>.fd-pdf-thumbnail img{object-fit:contain;height:100%;width:100%}
.fd-project-cover>.fd-map-thumbnail{align-self:stretch}.fd-project-cover .fd-map-preview-image{height:260px}
.fd-project-cover-empty{height:100%;width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;color:#fff;background:linear-gradient(135deg,#0c9fb7,#175f9f);position:relative;padding:30px;text-align:center}
.fd-project-cover[data-tone="1"] .fd-project-cover-empty{background:linear-gradient(135deg,#4c4c96,#24345f)}
.fd-project-cover[data-tone="2"] .fd-project-cover-empty{background:linear-gradient(135deg,#168a8c,#235d79)}
.fd-project-cover-empty::after{content:"";position:absolute;left:-1%;right:-1%;bottom:-1px;height:18px;border-radius:50% 50% 0 0/100% 100% 0 0;background:#fff}
.fd-project-cover-empty>svg{width:53px;height:53px;stroke-width:1.2}.fd-project-cover-empty>span{font-size:13px;color:#ffffffed;font-weight:400}
.fd-project-card-body{padding:22px 26px 24px}.fd-project-card .fd-card-top{margin-bottom:12px;align-items:center}.fd-project-card .fd-card-top>.fd-eyebrow{margin:0}
.fd-project-card .fd-card-top>svg{width:20px;height:20px;color:#13819a}.fd-project-card h3{font-size:23px;font-weight:500;letter-spacing:-.6px;line-height:1.35;margin:0 0 10px}
.fd-project-card p{font-size:14px;line-height:1.6;color:#68788a;margin:0;min-height:44px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fd-project-card .fd-card-meta{padding-top:17px;margin-top:18px;border-top:1px solid #edf0f4;color:#778598;font-size:11px}
.fd-photo-open{background:#fff}.fd-photo-open>img,.fd-photo-open>.fd-source-video,.fd-photo-open>.fd-guest-photo-preview{height:260px;min-height:260px}
.fd-photo-open>.fd-pdf-thumbnail{height:260px}.fd-photo-open>.fd-pdf-thumbnail img{object-fit:contain}
.fd-photo-info{padding:24px 64px 25px 25px}.fd-photo-info h3{font-size:20px;font-weight:550;line-height:1.4;margin-bottom:8px;letter-spacing:-.4px}.fd-photo-info p{font-size:12px;color:#738193}
.fd-photo-delete{right:16px;color:#80909d}.fd-photo-delete:hover{background:#fff0ec;color:#9b392d}
.fd-map-card .fd-photo-delete{top:258px;bottom:auto}.fd-map-credit{font-size:10px;background:#f7f9fb;border-top:1px solid #edf0f4;color:#738193;padding:8px 14px}.fd-map-credit a{color:#647a87}
.fd-photo-workspace,.fd-points-panel,.fd-guest-canvas{border-radius:15px;border-color:#e2e8ef;box-shadow:0 6px 22px #27375207;overflow:hidden}
.fd-view-toolbar{background:#fff;padding:12px;gap:6px}.fd-view-toolbar .fd-btn{border-radius:9px;font-size:13px}.fd-tool-active{background:#e6f5f8;color:#067c96}
.fd-mode-hint,.fd-canvas-help{background:#f7fafc;color:#687789;border-color:#eaf0f5;font-size:12px}
.fd-points-panel{padding:25px;background:#fbfcfe}.fd-point-card{background:#fff;border-color:#e1e9ef;border-radius:13px;padding:20px;box-shadow:0 3px 10px #213a4c04}
.fd-number{background:#e4f4f8;color:#087c95;border-radius:9px}.fd-point-title{font-size:15px;font-weight:600;color:#2d3d50}
.fd-point-card p{font-size:13px;color:#6d7d8d}.fd-point-card small{font-size:11px;color:#35768b}
.fd-inline-media-actions .fd-add-option,.fd-guest-add-actions .fd-add-option{background:#f7fbfd;border-color:#dcebf1;border-radius:12px;font-weight:550}
.fd-dialog,.fd-guest-detail{border-radius:20px;border:1px solid #e2e8ef;box-shadow:0 25px 100px #20345430}
.fd-dialog-header{padding:25px 28px 15px;border-bottom:1px solid #edf0f4}.fd-dialog-header h2{font-size:26px;font-weight:500;letter-spacing:-.7px}
.fd-dialog-body{padding:22px 28px 28px}.fd-dialog::backdrop,.fd-guest-detail::backdrop{background:#182e5260;backdrop-filter:blur(5px)}
.fd-field label,.fd-reply-form label{font-weight:550;color:#394d60}.fd-input-wrap input,.fd-input-wrap textarea{border-radius:11px;border-color:#dbe4ec;box-shadow:0 1px 2px #263b4c03}
.fd-share-mode{border-radius:12px;padding:15px}.fd-share-mode:has(input:checked){background:#eef9fc;border-color:#0c8ca6;box-shadow:0 0 0 1px #0c8ca6}.fd-share-mode strong{font-weight:600}
.fd-ext .dialog{border-radius:20px;border-color:#e2e8ef;box-shadow:0 25px 100px #20345430;padding:28px}
.fd-ext .dialog h2{font-size:28px;font-weight:500;letter-spacing:-.7px}.fd-ext .dialog header p{font-size:14px;color:#65768a;line-height:1.7;max-width:640px}
.fd-ext .dialog .button{border-radius:999px}.fd-ext .dialog .button.primary{background:#087f99;border-color:#087f99;color:#fff}
.fd-ext .dialog.wide:has(.content-options){width:min(900px,calc(100vw - 40px))}
.fd-ext .content-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0 4px}
.fd-ext .content-option{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:start;gap:0;padding:0;border-radius:13px;overflow:hidden;min-height:202px;border-color:#e1e8ef;box-shadow:0 5px 18px #233d5509;background:#fff}
.fd-ext .content-option:hover{background:#fff;box-shadow:0 9px 24px #1a526918;border-color:#99cad7}
.fd-ext .content-option>span{grid-column:1/-1;width:100%;height:88px;border-radius:0 0 48% 5%/0 0 14px 2px;background:linear-gradient(120deg,#108caa,#2969a0);color:#fff;display:grid;place-items:center}
.fd-ext .content-option:nth-child(2n)>span{background:linear-gradient(120deg,#4c5593,#2a3c65)}
.fd-ext .content-option>span svg{width:34px;height:34px;stroke-width:1.4}.fd-ext .content-option>div{padding:18px 8px 18px 20px}
.fd-ext .content-option strong{font-size:17px;font-weight:550;line-height:1.35;color:#2a354d}.fd-ext .content-option small{font-size:12px;color:#6b7c8e;line-height:1.55;margin-top:7px}
.fd-ext .content-option>svg{margin-top:21px;width:17px;color:#1c849b}
.fd-ext .content-option:last-child:nth-child(odd){grid-column:1/-1;grid-template-columns:100px minmax(0,1fr) 40px;align-items:center;min-height:105px}
.fd-ext .content-option:last-child:nth-child(odd)>span{grid-column:auto;height:100%;min-height:105px;border-radius:0;background:linear-gradient(145deg,#eff8fc,#e2eef7);color:#117f9a}
.fd-ext .content-option:last-child:nth-child(odd)>svg{margin:0}
.fd-guest-brand{padding:23px max(24px,calc((100vw - 1148px)/2));border-bottom:1px solid #edf0f4}.fd-guest-brand strong{font-weight:650;font-size:27px;color:#263550}
.fd-guest-brand>span{font-size:12px;color:#66778a}.fd-guest-content{max-width:1220px;padding:36px 36px 72px}.fd-guest-content>h1{font-weight:500;font-size:36px;letter-spacing:-1px}
.fd-guest-content .fd-photo-grid{gap:30px}.fd-guest-point{border-radius:14px;border-color:#e2e9f0;box-shadow:0 4px 16px #27375205}.fd-guest-point h2{font-weight:550}
.fd-onboarding{background:linear-gradient(125deg,#f0f9fc,#f7f7fc);border:1px solid #e4edf3;box-shadow:none;gap:30px;border-radius:18px;margin-bottom:40px}
.fd-onboarding h2{font-weight:500;letter-spacing:-1px}.fd-onboarding-steps{list-style:none;counter-reset:steps;display:flex;gap:16px;flex-wrap:wrap;margin:23px 0 28px;padding:0}
.fd-onboarding-steps li{counter-increment:steps;display:flex;align-items:center;gap:7px;font-size:12px;color:#456479}.fd-onboarding-steps li::before{content:counter(steps);display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#d8eff6;color:#077c97;font-size:11px;font-weight:600}
/* Drawer is independent from the page DOM, preserving zoom, scroll and players. */
.fd-sidebar{position:fixed;inset:0 0 0 auto;width:min(370px,calc(100vw - 24px));height:100dvh;z-index:60;transform:translateX(105%);transition:transform .22s ease;visibility:hidden;padding:27px 25px;background:#243454;color:#f4f7fc;border:0;overflow:auto;box-shadow:-15px 0 65px #1d31552b}
.fd-sidebar:not(.fd-sidebar-open){transform:translateX(105%)}.fd-sidebar.fd-sidebar-open{visibility:visible;transform:translateX(0)}
.fd-drawer-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.fd-drawer-heading>.fd-brand strong{color:#fff;font-size:25px}.fd-drawer-heading .fd-icon-btn{color:#e7f2fc;background:transparent;border:0}
.fd-sidebar .fd-brand-copy{color:#b8c7db;margin:20px 0 28px;font-size:12px;line-height:1.7;max-width:280px}
.fd-sidebar .fd-owner{background:#ffffff08;border:1px solid #ffffff19;color:#fff;border-radius:12px;margin:0 0 25px;padding:14px}.fd-sidebar .fd-owner small{color:#b2c7dc}.fd-sidebar .fd-avatar{background:#ffffff14;color:#d7e8f7}
.fd-sidebar .fd-nav{color:#d1deee;padding:13px 12px;min-height:48px;border-radius:9px;font-weight:400;font-size:14px;margin:2px 0;max-width:100%;overflow-wrap:anywhere}
.fd-sidebar .fd-nav:hover{background:#ffffff09;color:#fff}.fd-sidebar .fd-nav-active{color:#7be5f5;background:#1a8aa126;box-shadow:inset 3px 0 #39c3d8}
.fd-sidebar .fd-side-title{color:#9fb3cb;font-size:10px;letter-spacing:2px;margin-top:28px}.fd-sidebar .fd-side-title .fd-icon-btn{color:#c1d9ec}
.fd-sidebar .fd-project-nav{min-height:100px;max-height:none;flex:1}.fd-sidebar .fd-side-footer{border-top:1px solid #ffffff21;padding-top:22px;margin-top:26px;color:#b1c5dc;font-size:12px}.fd-sidebar .fd-side-footer a{color:#d5e2f1;padding:10px 0}
.fd-menu-backdrop{position:fixed;inset:0;background:#20345138;backdrop-filter:blur(2px);z-index:50;display:block;border:0;width:100%;height:100%;cursor:default}
.fd-menu-backdrop[hidden]{display:none!important}.fd-navigation-open{overflow:hidden}
.fd-upload-status{left:50%}
@media(min-width:1000px){.fd-project-tile:nth-child(even){margin-top:30px}.fd-project-grid{padding-bottom:30px;row-gap:32px}.fd-overview-page .fd-section-heading{margin-bottom:30px}}
@media(max-width:800px){.fd-topbar{height:72px;padding:0 23px;gap:18px}.fd-page,.fd-guest-content{padding:26px 24px 60px}.fd-overview-page{padding-top:40px}.fd-overview-heading{margin-bottom:44px}.fd-project-grid,.fd-photo-grid,.fd-guest-content .fd-photo-grid{gap:22px}.fd-project-card-body{padding:20px}.fd-project-card h3{font-size:21px}.fd-page-heading{align-items:flex-start}.fd-overview-heading{align-items:center}.fd-topbar .fd-save-state{font-size:0;gap:0}.fd-topbar .fd-save-state svg{width:21px;height:21px}.fd-project-cover,.fd-project-cover>img,.fd-project-cover>video,.fd-project-cover>.fd-pdf-thumbnail,.fd-project-cover>.fd-map-thumbnail,.fd-project-cover .fd-map-preview-image{height:240px}}
@media(max-width:600px){.fd-topbar{height:68px;padding:0 17px;gap:10px}.fd-topbar .fd-brand strong{font-size:24px}.fd-topbar .fd-logo{width:36px;height:36px;border-radius:11px}.fd-topbar .fd-logo svg{width:26px;height:26px}.fd-menu-toggle{min-width:44px;padding:8px}.fd-menu-toggle span{display:none}.fd-menu-toggle svg{width:27px}.fd-topbar .fd-save-state{margin-left:auto}.fd-topbar>.fd-brand{margin-right:0}
.fd-page,.fd-guest-content{padding:23px 18px 48px}.fd-overview-page{padding-top:36px}.fd-overview-heading{gap:22px;margin-bottom:37px}.fd-body .fd-overview-heading h1{font-size:42px;letter-spacing:-1.5px;margin:8px 0 13px}.fd-overview-heading p.fd-muted{font-size:17px}.fd-overview-heading .fd-heading-subline{font-size:13px!important;max-width:310px;margin:8px auto 0}.fd-overview-heading .fd-eyebrow{font-size:9px;letter-spacing:1.5px}.fd-overview-heading>.fd-btn{align-self:center}
.fd-body .fd-page-heading h1{font-size:29px;letter-spacing:-.8px}.fd-body .fd-overview-heading h1{font-size:42px}.fd-page-heading{margin-top:18px;margin-bottom:28px;gap:18px}.fd-heading-actions{width:100%;gap:9px}.fd-heading-subline{font-size:12px!important}.fd-breadcrumbs{gap:8px;font-size:11px;line-height:1.4;margin-bottom:10px}.fd-breadcrumbs .fd-btn{font-size:11px;min-height:32px}
.fd-section-heading{gap:14px;margin-bottom:20px;align-items:stretch}.fd-section-heading h2{font-size:21px}.fd-search{max-width:none;min-height:50px}.fd-project-grid,.fd-photo-grid,.fd-guest-content .fd-photo-grid{grid-template-columns:1fr;gap:23px}.fd-project-card{padding:0;min-height:0}.fd-project-card-body{padding:20px 22px}.fd-project-card h3{font-size:23px}.fd-photo-open>img,.fd-photo-open>.fd-source-video,.fd-photo-open>.fd-guest-photo-preview,.fd-photo-open>.fd-pdf-thumbnail{height:240px;min-height:240px}.fd-photo-info{padding:21px 60px 23px 22px}.fd-photo-info h3{font-size:19px}.fd-map-card .fd-photo-delete{top:253px}
.fd-dialog,.fd-guest-detail{border-radius:17px;width:calc(100vw - 18px);max-height:calc(100dvh - 24px)}.fd-dialog-header{padding:20px 19px 14px}.fd-dialog-header h2{font-size:24px}.fd-dialog-body{padding:18px 19px 22px}.fd-dialog-actions .fd-btn{padding:11px 16px}.fd-draft-state{font-size:11px}.fd-points-panel{padding:19px}.fd-point-card{padding:17px}.fd-view-toolbar .fd-btn{font-size:12px;padding:10px}.fd-photo-workspace{border-radius:13px}
.fd-ext .dialog,.fd-ext .dialog.wide,.fd-ext .dialog.wide:has(.content-options){width:calc(100vw - 18px);max-height:calc(100dvh - 24px);padding:20px 17px;border-radius:17px}.fd-ext .dialog h2{font-size:25px}.fd-ext .dialog header p{font-size:13px;line-height:1.6}.fd-ext .content-options{gap:11px;margin-top:21px}.fd-ext .content-option{min-height:187px;border-radius:11px}.fd-ext .content-option>span{height:70px}.fd-ext .content-option>span svg{width:29px;height:29px}.fd-ext .content-option>div{padding:14px 6px 15px 12px}.fd-ext .content-option strong{font-size:14px;line-height:1.4}.fd-ext .content-option small{font-size:11px;line-height:1.5;margin-top:5px}.fd-ext .content-option{grid-template-columns:minmax(0,1fr) 24px}.fd-ext .content-option>svg{width:15px;margin-top:17px}.fd-ext .content-option:last-child:nth-child(odd){grid-template-columns:70px minmax(0,1fr) 26px;min-height:91px}.fd-ext .content-option:last-child:nth-child(odd)>span{min-height:91px}.fd-ext .content-option:last-child:nth-child(odd)>div{padding:14px 10px}.fd-ext .dialog .button{font-size:13px;padding:10px 14px}
.fd-onboarding{padding:23px}.fd-onboarding h2{font-size:27px}.fd-onboarding-steps{display:grid;gap:10px}.fd-guest-brand{padding:17px 18px;gap:5px}.fd-guest-brand strong{font-size:25px}.fd-guest-content>h1{font-size:29px}.fd-sidebar{padding:24px 20px;width:min(350px,calc(100vw - 20px))}.fd-drawer-heading>.fd-brand strong{font-size:24px}}
@media(prefers-reduced-motion:reduce){.fd-sidebar,.fd-btn,.fd-project-tile,.fd-photo-card{transition:none}}
