:root{color:#18293c;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--navy:#132c43;--teal:#087e80;--border:#dce4e9;--muted:#5c6d7b;background:#f4f7f9;font-family:Segoe UI,Arial,sans-serif;font-size:14px;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #128d98}::selection{color:#132c43;background:#b8e4e3}input{accent-color:var(--teal);caret-color:var(--teal)}h1,h2,h3,p{margin:0}h1{font-size:30px;font-weight:650;line-height:1.2}h2{font-size:19px;font-weight:650;line-height:1.3}h3{font-size:15px;font-weight:650;line-height:1.4}p{color:var(--muted)}code{overflow-wrap:anywhere;font:12px/1.6 Consolas,monospace}button{border:1px solid var(--border);color:#243b4e;background:#fff;border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:8px 13px;font-weight:600;transition:background .15s;display:inline-flex}button:hover{background:#edf3f6}button:disabled{color:#697783;background:#edf0f2;border-color:#e1e6e9}.primary{background:var(--teal);color:#fff;border-color:var(--teal)}.primary:hover{background:#06686a}.danger{color:#fff;background:#b72c35;border-color:#b72c35}.danger:hover{background:#96222a}.danger-text{color:#b02b35}.full{width:100%}.subtle{color:var(--muted);font-size:12px}.brand{color:#fff;white-space:nowrap;align-items:center;gap:11px;font-size:22px;font-weight:700;display:flex}.brand div>span{color:#79ceca;font-weight:400}.brand small{letter-spacing:1.8px;color:#b5c9d6;margin-top:1px;font-size:9px;display:block}.brand-mark{color:#fff;border:2px solid #72cbc7;border-radius:9px;place-items:center;width:37px;height:41px;font-size:26px;line-height:1;display:grid}.app-shell{min-height:100svh;display:flex}.sidebar{background:var(--navy);flex-direction:column;width:254px;padding:31px 20px 0;display:flex;position:fixed;inset:0 auto 0 0}.sidebar .brand{margin:0 12px 51px}.workspace-label{letter-spacing:1.5px;color:#acc0cf;margin:0 15px 14px;font-size:10px}.sidebar nav{gap:8px;display:grid}.sidebar nav a{color:#c8d7e1;border-radius:7px;align-items:center;gap:12px;padding:13px 14px;font-size:13px;display:flex}.sidebar nav a:hover{background:#1c3a52}.sidebar nav a.active{color:#fff;background:#234459}.sidebar nav a.active svg{color:#85d5cf}.sidebar-note{color:#94c5c9;gap:11px;margin-top:auto;padding:35px 14px;display:flex}.sidebar-note p{color:#dce7ed;font-size:12px;line-height:1.8}.sidebar-note span{color:#acbfcd}.account{border-top:1px solid #355065;align-items:center;gap:9px;margin:0 -20px;padding:22px 17px;display:flex}.avatar{color:#fff;background:#365368;border-radius:50%;place-items:center;width:32px;height:32px;font-size:12px;display:grid}.account>div{flex:1;min-width:0}.account strong{color:#edf4f8;font-size:12px;font-weight:600;display:block}.account div span{text-overflow:ellipsis;color:#b5c8d6;font-size:11px;display:block;overflow:hidden}.account button{color:#cfdee7;background:0 0;border:0;min-width:32px;padding:5px}.main-shell{flex-direction:column;flex:1;min-width:0;margin-left:254px;display:flex}.topbar{border-bottom:1px solid var(--border);color:#536675;background:#fff;justify-content:space-between;align-items:center;height:70px;padding:0 38px;font-size:12px;display:flex}.topbar>span{align-items:center;gap:9px;display:flex}.admin-badge{font-size:11px}.workspace{flex:1;width:100%;max-width:1650px;margin:auto;padding:36px 38px 24px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.page-heading p{max-width:70ch;margin-top:9px}.page-heading>button{flex-shrink:0}.back-link{color:var(--teal);align-items:center;gap:6px;margin-bottom:15px;font-size:12px;display:inline-flex}.review-section{border:1px solid var(--border);background:#fff;border-radius:12px;overflow:hidden}.section-heading{justify-content:space-between;align-items:center;gap:15px;padding:24px;display:flex}.section-heading p{margin-top:5px;font-size:12px}.toolbar{align-items:center;gap:18px;padding:0 24px 20px;display:flex}.toolbar>span{color:var(--muted);white-space:nowrap;font-size:11px}.search{color:#617482;border:1px solid #ced9e0;border-radius:7px;align-items:center;gap:10px;width:100%;max-width:540px;padding:0 12px;display:flex}.search input{color:#243b4e;outline-offset:0;background:0 0;border:0;width:100%;min-width:0;padding:11px 0}.search input::placeholder{color:#617280}.selection-bar{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#f7f9fb;align-items:center;gap:16px;padding:11px 24px;font-size:12px;display:flex}.selection-bar label,.carpark-footer label{white-space:nowrap;align-items:center;gap:7px;display:flex}.selection-bar input,.carpark-footer input{width:16px;height:16px}.selection-bar button{background:0 0;border:0;min-height:32px;padding:5px 0;font-size:12px}.selection-end{align-items:center;gap:14px;margin-left:auto;display:flex}.carpark-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:24px;display:grid}.carpark-card{border:1px solid var(--border);border-radius:12px;min-width:0;overflow:hidden}.carpark-photo{background:#e8edf1;height:175px;display:block;position:relative}.carpark-photo img{object-fit:cover;width:100%;height:100%}.carpark-info{padding:17px}.carpark-info h3{margin-bottom:6px;font-size:16px}.carpark-info h3 a:hover{color:var(--teal);text-decoration:underline}.carpark-info code{color:#667884;font-size:10px}.carpark-info p{margin:14px 0 16px;font-size:11px}.carpark-footer{border-top:1px solid #e7ecf0;justify-content:space-between;align-items:center;gap:8px;padding-top:13px;font-size:11px;display:flex}.carpark-footer a{color:#076f72;align-items:center;gap:6px;font-weight:600;display:flex}.badge{color:#07686b;white-space:nowrap;background:#e8f5f3;border-radius:5px;align-items:center;gap:5px;padding:5px 8px;font-size:10px;font-weight:650;display:inline-flex}.image-badge{color:#07686b;pointer-events:none;background:#fff;position:absolute;bottom:11px;left:11px}.pagination{border-top:1px solid var(--border);color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:12px;padding:18px 24px;font-size:12px;display:flex}.pagination>div{align-items:center;gap:8px;display:flex}.pagination label{align-items:center;gap:10px;margin-right:10px;display:flex}.pagination select{border:1px solid var(--border);color:#243b4e;background:#fff;border-radius:5px;padding:7px}.pagination button{min-width:35px;min-height:35px;padding:7px}.url-note{color:#607380;background:#fafcfd;border-top:1px solid #edf1f4;justify-content:center;align-items:center;gap:7px;padding:13px 20px;font-size:11px;display:flex}.app-footer{border-top:1px solid var(--border);color:#657785;justify-content:space-between;margin:0 38px;padding:18px 0;font-size:11px;display:flex}.publication{border:1px solid var(--border);background:#fff;border-radius:12px;margin-bottom:26px}.publish-compare{grid-template-columns:1fr 1fr;align-items:stretch;gap:28px;padding:0 24px 24px;display:grid}.publish-current,.publish-proposed{align-items:center;gap:18px;min-width:0;display:flex}.publish-current>img,.publish-proposed>img{object-fit:cover;border-radius:7px;width:155px;height:115px}.publish-current h3,.publish-proposed h3{overflow-wrap:anywhere;margin:5px 0}.publish-current p{font-size:12px}.publish-proposed{border-left:1px solid var(--border);padding-left:25px}.publish-proposed button{min-height:34px;margin:5px 6px 0 0;padding:6px 9px;font-size:11px}.publish-hint{color:var(--teal);border-left:1px solid var(--border);align-items:center;gap:15px;padding-left:30px;display:flex}.publish-hint p{font-size:12px;line-height:1.8}.published-empty{gap:7px;padding:14px 0;display:grid}.published-empty svg{color:#6b8795}.published-empty p{font-size:12px}.image-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:24px;display:grid}.image-card{border:1px solid var(--border);border-radius:12px;min-width:0;overflow:hidden}.image-card.selected{border-color:var(--teal);outline:1px solid var(--teal)}.image-wrap{height:190px;position:relative}.photo-button{background:#e8edf1;border:0;border-radius:0;width:100%;height:100%;padding:0;display:block}.photo-button img{object-fit:cover;width:100%;height:100%}.image-check{background:#fff;border-radius:5px;padding:5px;display:flex;position:absolute;top:12px;left:12px}.image-check input{width:17px;height:17px;margin:0}.image-info{padding:15px}.image-info h3{overflow-wrap:anywhere}.caption{overflow-wrap:anywhere;min-height:36px;margin:6px 0 12px;font-size:12px}.metadata{color:#5f7280;font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;gap:5px;font-size:10px;display:flex}.card-actions{border-top:1px solid var(--border);justify-content:space-between;gap:8px;margin-top:13px;padding-top:10px;display:flex}.card-actions button{min-height:32px;padding:4px 7px;font-size:11px}.card-actions button:first-child{color:#086e71;background:#edf7f6;border:0}.loading,.empty{text-align:center;color:#67818f;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:280px;padding:55px 25px;display:flex}.empty p{max-width:55ch;font-size:13px}.broken{color:#536d7c;text-align:center;background:#e9eff2;flex-direction:column;justify-content:center;align-items:center;gap:7px;height:100%;min-height:110px;padding:12px;font-size:12px;display:flex}.broken button{min-height:30px;font-size:11px}.error,.notice,.warning{border-radius:7px;margin-bottom:18px;padding:15px 18px;font-size:13px}.error{color:#8f2832;background:#fff0f0;border:1px solid #ebc8cb}.error button{margin-left:12px}.error ul{overflow-wrap:anywhere;padding-left:18px}.notice{color:#076368;background:#e7f4f2;border:1px solid #b6dcd7}.warning{color:#855207;background:#fff5df;border:1px solid #ead5aa;margin-top:15px}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}dialog{color:#18293c;border:0;border-radius:13px;width:calc(100% - 32px);max-width:740px;max-height:90svh;padding:26px;overflow:auto;box-shadow:0 20px 70px #0a263b40}dialog::backdrop{background:#10283bc4}.dialog-head{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.dialog-head>button{border:0;min-width:38px;padding:5px}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.confirm-images{gap:16px;margin-top:18px;display:flex}.confirm-images figure{flex:1;min-width:0;margin:0}.confirm-images img{object-fit:cover;border-radius:7px;width:100%;height:180px}figcaption{color:var(--muted);overflow-wrap:anywhere;margin-top:7px;font-size:11px}.delete-previews{gap:12px;max-height:230px;margin-top:20px;display:flex;overflow:auto}.delete-previews figure{flex-shrink:0;width:120px;margin:0}.delete-previews img{object-fit:cover;border-radius:5px;width:120px;height:90px}.large-preview>img{object-fit:contain;background:#edf1f4;width:100%;height:min(55svh,500px)}.large-preview>p{margin:13px 0}.preview-controls{justify-content:space-between;align-items:center;gap:8px;display:flex}.preview-controls span{white-space:nowrap;font-size:12px}.login{grid-template-columns:1fr 1fr;min-height:100svh;display:grid}.login-story{background:var(--navy);color:#fff;flex-direction:column;justify-content:space-between;padding:48px 60px;display:flex}.login-story h1{max-width:15ch;font-size:clamp(32px,3.7vw,52px);font-weight:600;line-height:1.2}.login-story p{color:#bed0dc;max-width:40ch;margin-top:26px;font-size:16px;line-height:1.8}.login-rule{background:#64c6bf;width:52px;height:3px;margin:35px 0 20px}.login-story>small,.login-story>div>span{color:#bfd0dc;font-size:12px}.login-form{background:#fff;place-items:center;padding:50px 35px;display:grid}.login-form>div{width:100%;max-width:360px}.login-shield{color:var(--teal);margin-bottom:23px}.login-form h2{font-size:29px}.login-form p{margin-top:10px}.login-form form{gap:21px;margin-top:35px;display:grid}.login-form label{gap:8px;font-size:13px;font-weight:600;display:grid}.login-form input{color:#172c3d;background:#fff;border:1px solid #cad6df;border-radius:7px;width:100%;padding:12px 13px;font-size:16px}.login-form .full{justify-content:space-between;min-height:46px;margin-top:3px}.login-form .login-foot{margin-top:25px;font-size:11px;line-height:1.8}.login-form .notice{margin-top:20px}.login-form .error{margin:0}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:#edf1f4}::-webkit-scrollbar-thumb{background:#a9bcc7;border-radius:5px}@media (width>=1600px){.carpark-grid,.image-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=1200px){.sidebar{width:220px;padding-inline:14px}.sidebar .brand{margin-left:5px;font-size:20px}.sidebar nav a{gap:8px;font-size:12px}.account{margin-inline:-14px}.main-shell{margin-left:220px}.workspace{padding:28px 24px}.topbar{padding-inline:24px}.carpark-grid,.image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.publish-compare{grid-template-columns:1fr}.publish-proposed,.publish-hint{border-left:0;border-top:1px solid var(--border);padding:18px 0 0}}@media (width<=760px){.app-shell{display:block}.sidebar{width:100%;padding:18px 20px 0;position:static}.sidebar .brand{margin:0 0 20px;font-size:20px}.workspace-label,.sidebar-note,.account .avatar,.account>div{display:none}.sidebar nav{gap:8px;padding-bottom:13px;display:flex}.sidebar nav a{padding:10px;font-size:12px}.account{border:0;margin:0;padding:0;position:absolute;top:17px;right:18px}.account button{color:#fff}.main-shell{margin:0}.topbar{height:48px;padding:0 20px}.admin-badge{display:none!important}.workspace{padding:24px 18px}.page-heading{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:23px}.page-heading h1{font-size:26px}.page-heading p{font-size:13px}.page-heading>button{min-height:36px;font-size:12px}.section-heading{align-items:flex-start;padding:20px}.section-heading>.subtle{display:none}.section-heading h2{font-size:18px}.toolbar{flex-direction:column;align-items:flex-start;gap:6px;padding:0 18px 18px}.search input{font-size:12px}.selection-bar{flex-wrap:wrap;gap:8px 16px;padding:11px 18px}.selection-end{border-top:1px solid var(--border);width:100%;margin-left:0;padding-top:8px}.carpark-grid,.image-grid{gap:16px;padding:18px}.carpark-grid{grid-template-columns:1fr}.carpark-photo{height:200px}.image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.image-wrap{height:145px}.image-info{padding:12px}.card-actions{flex-wrap:wrap}.image-info h3{font-size:13px}.pagination{flex-wrap:wrap;padding:16px}.pagination>div{margin-left:auto}.url-note{align-items:flex-start;font-size:10px}.publish-compare{padding:0 20px 20px}.publish-current>img,.publish-proposed>img{width:110px;height:100px}.app-footer{margin:0 18px;font-size:10px}.login{grid-template-rows:auto 1fr;grid-template-columns:1fr}.login-story{padding:25px}.login-story>div:not(.brand),.login-story>small{display:none}.login-form{align-items:start;padding:40px 25px}.preview-controls button{padding:6px;font-size:11px}.confirm-images img{height:120px}}@media (width<=430px){.image-grid{grid-template-columns:1fr}.image-wrap{height:210px}.topbar{font-size:11px}.publish-proposed{flex-direction:column;align-items:flex-start}.publish-proposed>img{width:100%;height:170px}.dialog-actions{flex-wrap:wrap}.dialog-actions button{flex:1}.app-footer span{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.directory-filters{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:flex-end;gap:18px;padding:20px 24px;display:flex}.directory-filters label{color:var(--muted);gap:7px;font-size:12px;display:grid}.directory-filters select{color:#243b4e;background:#fff;border:1px solid #ced9e0;border-radius:7px;max-width:100%;padding:9px 12px}.directory-filters>span{color:var(--muted);margin-left:auto;padding-bottom:10px;font-size:11px}.directory-table-head,.directory-row{grid-template-columns:44px minmax(180px,1.5fr) minmax(150px,1fr) minmax(130px,.8fr) 125px;align-items:center;gap:16px;padding:18px 24px;display:grid}.directory-table-head{color:var(--muted);border-bottom:1px solid var(--border);background:#fafcfd;font-size:11px}.directory-row{border-bottom:1px solid #e7edf1;min-height:108px}.directory-row:last-child{border-bottom:0}.directory-row:hover{background:#f8fbfc}.directory-row input{width:17px;height:17px}.directory-name{align-items:center;gap:12px;min-width:0;display:flex}.directory-name>svg{color:#617887;flex-shrink:0}.directory-name>div{min-width:0}.directory-name a{font-size:14px;font-weight:650}.directory-name a:hover{color:var(--teal);text-decoration:underline}.directory-name code{color:var(--muted);margin-top:5px;font-size:10px;display:block}.directory-counts{color:var(--muted);justify-items:start;gap:4px;font-size:11px;display:grid}.directory-counts strong{color:#243b4e;font-size:13px;font-weight:600}.directory-date{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.directory-date>span{margin-top:4px;display:block}.directory-open{color:var(--teal);align-items:center;gap:6px;min-height:40px;font-size:12px;font-weight:600;display:inline-flex}.directory-open:hover{text-decoration:underline}.public-loading{min-height:140px}@media (width<=1200px){.directory-table-head,.directory-row{grid-template-columns:24px minmax(160px,1.5fr) minmax(150px,1fr) 115px;gap:12px}.directory-table-head>span:nth-child(4),.directory-date{display:none}}@media (width<=760px){.directory-filters{gap:14px;padding:18px}.directory-filters label{flex:1;min-width:220px}.directory-filters>span{margin:0;padding:0}.directory-table-head{display:none}.directory-row{grid-template-columns:22px minmax(0,1fr);align-items:start;gap:10px 12px;padding:20px 18px}.directory-name>svg{display:none}.directory-counts{flex-wrap:wrap;grid-column:2;align-items:center;gap:8px 12px;display:flex}.directory-row>div:last-child{grid-column:2}.directory-name a{font-size:15px}.directory-date{grid-column:2;display:block}.directory-date>span{margin-left:5px;display:inline}.directory-open{min-height:32px}}.catalogue-form{gap:18px;padding:0 24px 24px;display:grid}.catalogue-form label{color:var(--muted);gap:7px;font-size:12px;display:grid}.catalogue-form .search{max-width:none}.catalogue-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.catalogue-form select,.catalogue-form input:not(.search input){color:#243b4e;background:#fff;border:1px solid #ced9e0;border-radius:7px;width:100%;min-width:0;padding:10px 12px}.catalogue-form details{color:var(--muted);font-size:12px}.catalogue-form summary{cursor:pointer;color:var(--teal);width:fit-content}.catalogue-form details label{margin-top:14px}.catalogue-form details p{margin-top:7px;font-size:11px}.catalogue-filter-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.catalogue-filter-actions>span{color:var(--muted);margin-left:auto;font-size:11px}.catalogue-results{border-block:1px solid var(--border);color:var(--muted);background:#f7f9fb;padding:14px 24px;font-size:12px}.catalogue-head,.catalogue-row{grid-template-columns:minmax(230px,1.5fr) 95px minmax(145px,1fr) 95px 125px;align-items:center;gap:16px;padding:18px 24px;display:grid}.catalogue-head{color:var(--muted);border-bottom:1px solid var(--border);font-size:11px}.catalogue-row{border-bottom:1px solid #e7edf1;min-height:110px;font-size:12px}.catalogue-row:last-child{border-bottom:0}.catalogue-row:hover{background:#f8fbfc}.catalogue-row .subtle{margin-top:5px;font-size:11px;display:block}.catalogue-row>div{overflow-wrap:anywhere;min-width:0}.catalogue-error{margin:0 24px 18px}.section-heading>.back-link{margin:0}.sidebar nav{flex-shrink:0}@media (width<=1200px){.catalogue-head,.catalogue-row{grid-template-columns:minmax(180px,1.5fr) 80px minmax(115px,1fr) 115px;gap:12px}.catalogue-head>span:nth-child(4),.catalogue-row>div:nth-child(4){display:none}}@media (width<=760px){.catalogue-form{padding:0 18px 20px}.catalogue-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogue-filter-actions>span{width:100%;margin:0}.catalogue-head{display:none}.catalogue-row{grid-template-columns:1fr 75px;gap:14px;padding:20px 18px}.catalogue-row>div:nth-child(3){grid-column:1/-1}.catalogue-row>div:nth-child(4){display:block}.catalogue-row>div:last-child{grid-column:1/-1}.catalogue-results{padding-inline:18px}.sidebar nav,.section-heading{flex-wrap:wrap}.catalogue-form input,.catalogue-form select{font-size:16px}}
