:root{--z-primary:#38f;--z-primary-hover:#5ca5ff;--z-primary-active:#2167d9;--z-primary-soft:#f0f9ff;--z-text-strong:#081126;--z-text:#235;--z-text-muted:#6b7a99;--z-text-weak:#a8b4c8;--z-border:#dde1eb;--z-divider:#e9ecf2;--z-bg:#f5f7fa;--z-white:#fff;--z-success:#06a17f;--z-success-bg:#b6fae0;--z-warning:#d94f00;--z-warning-bg:#ffd4a3;--z-danger:#f43;--z-danger-bg:#fff4f0;--z-shadow:0 8px 24px #124ab424}*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden}body{color:var(--z-text);background:var(--z-bg);letter-spacing:0;font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{border:0}.z-button{border:1px solid var(--z-border);height:32px;color:var(--z-text);background:var(--z-white);cursor:pointer;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:0 16px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.z-button:hover{color:var(--z-primary);border-color:var(--z-primary);background:var(--z-primary-soft)}.z-button:active{background:#d6edff}.z-button-primary{color:#fff;border-color:var(--z-primary);background:var(--z-primary)}.z-button-primary:hover{color:#fff;border-color:var(--z-primary-hover);background:var(--z-primary-hover)}.z-button-danger:hover{color:var(--z-danger);border-color:var(--z-danger);background:var(--z-danger-bg)}.z-button-sm{height:24px;padding:0 10px;font-size:12px}.z-button:disabled{color:#ced4e0;border-color:var(--z-divider);cursor:not-allowed;pointer-events:none;background:#fff}.z-icon-button{width:32px;height:32px;color:var(--z-text-muted);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;padding:0;display:inline-flex}.z-icon-button:hover{color:var(--z-primary);background:var(--z-primary-soft)}.z-input,.z-select,.z-textarea{width:100%;height:32px;color:var(--z-text);border:1px solid var(--z-border);background:var(--z-white);border-radius:4px;outline:none;padding:0 12px 0 8px;transition:border-color .15s,box-shadow .15s}.z-input::placeholder,.z-textarea::placeholder{color:var(--z-text-weak)}.z-input:hover,.z-select:hover,.z-textarea:hover,.z-input:focus,.z-select:focus,.z-textarea:focus{border-color:var(--z-primary)}.z-input:focus,.z-select:focus,.z-textarea:focus{box-shadow:0 0 0 2px #d6edff}.z-textarea{resize:vertical;min-height:84px;padding-top:6px;padding-bottom:6px}.z-field{gap:8px;display:grid}.z-label{color:var(--z-text);line-height:1}.z-label-required:before{content:"*";color:var(--z-danger);margin-right:4px}.z-field-error{color:var(--z-danger);margin-top:-4px;font-size:12px}.z-help{color:var(--z-text-weak);font-size:12px;line-height:1.5}.z-tag{height:20px;color:var(--z-text);background:var(--z-bg);white-space:nowrap;border-radius:4px;align-items:center;padding:0 6px;font-size:12px;display:inline-flex}.z-tag-primary{color:var(--z-primary);background:var(--z-primary-soft)}.z-tag-success{color:var(--z-success);background:var(--z-success-bg)}.z-tag-warning{color:var(--z-warning);background:var(--z-warning-bg)}.z-tag-danger{color:var(--z-danger);background:var(--z-danger-bg)}.auth-layout{background:#fff;grid-template-columns:minmax(360px,44%) 1fr;min-height:100vh;display:grid}.auth-brand{color:#fff;background:linear-gradient(148deg,#1f62d0 0%,#38f 58%,#18a7b6 100%);flex-direction:column;justify-content:space-between;min-height:100vh;padding:48px 56px;display:flex;position:relative;overflow:hidden}.auth-brand:after{content:"";border:90px solid #ffffff17;border-radius:50%;width:460px;height:460px;position:absolute;bottom:-170px;right:-120px}.auth-logo,.topnav-brand{z-index:1;align-items:center;gap:10px;display:inline-flex;position:relative}.auth-logo-mark,.topnav-logo-mark{width:40px;height:40px;color:var(--z-primary);background:#fff;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.auth-logo-title,.topnav-brand-title{font-size:18px;font-weight:600}.auth-brand-main{z-index:1;max-width:520px;position:relative}.auth-brand-main h1{margin:0 0 20px;font-size:36px;font-weight:600;line-height:1.35}.auth-brand-main p{color:#ffffffd1;max-width:440px;margin:0;font-size:16px;line-height:1.8}.auth-brand-foot{z-index:1;color:#ffffffa6;font-size:12px;position:relative}.auth-main{background:#fff;justify-content:center;align-items:center;min-width:0;padding:48px;display:flex}.auth-form-wrap{width:min(420px,100%)}.auth-form-title{color:var(--z-text-strong);margin:0 0 8px;font-size:28px;font-weight:600}.auth-form-desc{color:var(--z-text-muted);margin:0 0 28px}.auth-form{gap:20px;display:grid}.auth-form .z-input,.auth-form .z-select{height:40px}.auth-submit{width:100%;height:40px;margin-top:4px}.auth-switch{color:var(--z-text-muted);text-align:center;margin-top:20px}.auth-switch a{color:var(--z-primary);margin-left:6px}.demo-account{color:var(--z-text-muted);background:var(--z-primary-soft);border:1px solid #d6edff;border-radius:4px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:10px 12px;font-size:12px;display:flex}.captcha-row{grid-template-columns:1fr 96px;gap:8px;display:grid}.captcha-image{border:1px solid var(--z-border);cursor:pointer;object-fit:cover;border-radius:4px;width:96px;height:40px}.app-frame{background:var(--z-bg);flex-direction:column;height:100vh;display:flex;overflow:hidden}.topnav{z-index:30;color:#fff;background:linear-gradient(90deg,#2167d9,#38f);flex:0 0 60px;align-items:center;height:60px;padding:0 20px;display:flex;position:relative}.topnav-logo-mark{width:36px;height:36px}.topnav-menu{align-self:stretch;margin-left:70px;display:flex}.topnav-menu a{color:#ffffffe6;align-items:center;padding:0 20px;font-size:16px;display:flex}.topnav-menu a:hover,.topnav-menu a.is-active{color:#fff;background:#0000001a}.topnav-tools{align-items:center;gap:4px;margin-left:auto;display:flex}.topnav-tool{color:#fff;cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.topnav-tool:hover{background:#ffffff26}.topnav-divider{background:#ffffff40;width:1px;height:20px;margin:0 8px}.topnav-user-wrap{position:relative}.topnav-user{height:60px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:0 8px;display:flex}.topnav-user:hover{background:#ffffff1f}.topnav-avatar{color:#fff;background:#ffffff40;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;display:flex}.topnav-user-meta{gap:2px;min-width:96px;display:grid}.topnav-user-name{font-size:14px}.topnav-user-dept{color:#ffffffb3;text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:12px;overflow:hidden}.user-dropdown{width:168px;color:var(--z-text);border:1px solid var(--z-divider);box-shadow:var(--z-shadow);background:#fff;border-radius:8px;padding:8px;position:absolute;top:64px;right:0}.user-dropdown a,.user-dropdown button{width:100%;height:36px;color:var(--z-text);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:8px;padding:0 8px;display:flex}.user-dropdown a:hover,.user-dropdown button:hover{background:var(--z-bg)}.user-dropdown .danger{color:var(--z-danger)}.app-main-layout{flex:1;min-height:0;display:flex;overflow:hidden}.sidenav{border-right:1px solid var(--z-divider);background:#fff;flex:0 0 200px;width:200px;padding:12px 8px;overflow-y:auto}.sidenav-section+.sidenav-section{border-top:1px solid var(--z-divider);margin-top:16px;padding-top:12px}.sidenav-heading{color:var(--z-text-weak);padding:0 8px 8px;font-size:12px}.sidenav-link{height:36px;color:var(--z-text);border-radius:4px;align-items:center;gap:8px;padding:0 8px;display:flex}.sidenav-link+.sidenav-link{margin-top:8px}.sidenav-link:hover{background:var(--z-bg)}.sidenav-link.is-active{color:var(--z-primary);background:var(--z-primary-soft)}.right-panel{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.tab-bar{scrollbar-width:none;background:linear-gradient(#e9ecf2,#fff);flex:0 0 40px;align-items:flex-end;gap:2px;height:40px;padding:0 8px;display:flex;overflow:auto hidden}.tab-bar::-webkit-scrollbar{display:none}.tab-bar-item{width:154px;min-width:154px;height:32px;color:var(--z-text-muted);background:#e9ecf2;border-radius:8px 8px 0 0;flex:0 0 154px;justify-content:space-between;align-items:center;gap:6px;padding:0 10px 0 12px;display:flex}.tab-bar-item:hover,.tab-bar-item.is-active{color:var(--z-primary);background:linear-gradient(#fff,#f1f6fa)}.tab-bar-label{min-width:0;color:inherit;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tab-bar-tools{flex:none;align-items:center;display:flex}.tab-bar-tools button{width:24px;height:24px;color:var(--z-text-weak);cursor:pointer;background:0 0;border-radius:4px;place-items:center;padding:0;display:grid}.tab-bar-tools button:hover{color:var(--z-primary);background:#a8b4c833}.content-scroll{background:var(--z-bg);flex:1;min-width:0;min-height:0;padding:20px;overflow:hidden}.page-panel{background:#fff;border-radius:8px;flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.page-panel-header{border-bottom:1px solid var(--z-divider);flex:0 0 56px;justify-content:space-between;align-items:center;gap:16px;height:56px;padding:10px 20px;display:flex}.page-panel-title{color:var(--z-text-strong);margin:0;font-size:18px;font-weight:500}.page-panel-actions{align-items:center;gap:8px;display:flex}.expiry-custom{color:var(--z-text-muted);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.expiry-custom .z-input{width:92px}.page-panel-body{flex-direction:column;flex:1;min-width:0;min-height:0;padding:20px;display:flex;overflow:hidden}.z-search{width:240px;position:relative}.z-search .z-input{border-radius:16px;padding-right:34px}.z-search svg{color:var(--z-text-weak);pointer-events:none;position:absolute;top:9px;right:12px}.z-sel{-webkit-user-select:none;user-select:none;min-width:0;position:relative}.z-sel-trigger{width:100%;height:32px;color:var(--z-text-weak);border:1px solid var(--z-border);text-align:left;cursor:pointer;background:#fff;border-radius:4px;align-items:center;padding:0 32px 0 8px;font-size:14px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.z-sel-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.z-sel-trigger.has-value{color:var(--z-text)}.z-sel-trigger:hover,.z-sel.is-open .z-sel-trigger{border-color:var(--z-primary)}.z-sel.is-open .z-sel-trigger{box-shadow:0 0 0 2px #d6edff}.z-sel.is-disabled .z-sel-trigger{color:var(--z-text-weak);border-color:var(--z-divider);background:var(--z-bg);cursor:not-allowed}.z-sel-chevron{color:var(--z-text-weak);pointer-events:none;transition:transform .2s,color .15s;position:absolute;top:7px;right:8px}.z-sel.is-open .z-sel-chevron{color:var(--z-primary);transform:rotate(180deg)}.z-sel-clear{z-index:1;color:#fff;background:var(--z-text-weak);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:13px;font-style:normal;line-height:16px;display:none;position:absolute;top:7px;right:8px}.z-sel.has-value:hover .z-sel-clear{display:flex}.z-sel.has-value:hover .z-sel-clear+.z-sel-chevron{display:none}.z-sel-panel{z-index:3000;background:#fff;border-radius:8px;max-height:280px;padding:8px;position:fixed;overflow-y:auto;box-shadow:0 2px 20px #22335529}.z-sel-option{width:100%;height:40px;color:var(--z-text);text-align:left;cursor:pointer;background:#fff;border-radius:4px;align-items:center;padding:0 8px;font-size:14px;display:flex}.z-sel-option:hover,.z-sel-option.is-active{background:var(--z-bg)}.z-sel-option.is-selected{background:var(--z-primary-soft)}.z-sel-option:disabled{color:var(--z-text-weak);cursor:not-allowed}.z-tree-panel{padding:4px 8px}.z-tree-option{border-radius:4px;align-items:center;height:40px;display:flex}.z-tree-option:hover{background:var(--z-bg)}.z-tree-option.is-selected{background:var(--z-primary-soft)}.z-tree-toggle{width:16px;height:24px;color:var(--z-text-weak);cursor:pointer;background:0 0;flex:0 0 16px;place-items:center;padding:0;display:grid}.z-tree-toggle.is-open svg{transform:rotate(90deg)}.z-tree-toggle:disabled{visibility:hidden}.z-tree-label{min-width:0;height:100%;color:var(--z-text);cursor:pointer;background:0 0;flex:1;align-items:center;gap:4px;padding:0 8px 0 4px;display:flex;overflow:hidden}.z-tree-label svg{color:var(--z-primary);flex:none}.z-tree-label span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.z-switch{background:var(--z-text-weak);cursor:pointer;border-radius:10px;flex:0 0 36px;width:36px;height:20px;padding:0;transition:background .2s;position:relative}.z-switch:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:left .2s;position:absolute;top:2px;left:2px}.z-switch.is-on{background:var(--z-primary)}.z-switch.is-on:after{left:18px}.z-table-wrap{min-width:0;overflow-x:auto}.page-list-results,.people-results,.analytics-log-results{flex:1;min-height:0;overflow:auto}.page-list-results .z-table thead,.people-results .z-table thead,.analytics-log-results .z-table thead,.projects-results .z-table thead{z-index:2;position:sticky;top:0}.z-pagination{min-height:48px;color:var(--z-text-muted);border-top:1px solid var(--z-divider);background:#fff;flex:0 0 48px;justify-content:flex-end;align-items:center;gap:10px;padding:8px 0 0;font-size:12px;display:flex}.z-pagination-total{margin-right:2px}.z-pagination-size{width:104px}.z-pagination-pages{align-items:center;gap:4px;display:inline-flex}.z-pagination-pages button,.z-pagination-ellipsis{width:32px;height:32px;color:var(--z-text);border:1px solid var(--z-border);background:#fff;border-radius:4px;justify-content:center;align-items:center;padding:0;display:inline-flex}.z-pagination-pages button{cursor:pointer}.z-pagination-pages button:hover,.z-pagination-pages button.is-active{color:var(--z-primary);border-color:var(--z-primary);background:var(--z-primary-soft)}.z-pagination-pages button:disabled{color:var(--z-text-weak);border-color:var(--z-divider);cursor:not-allowed}.z-pagination-ellipsis{border-color:#0000}.z-pagination-jump{align-items:center;gap:5px;display:inline-flex}.z-pagination-jump input{width:44px;height:32px;color:var(--z-text);border:1px solid var(--z-border);text-align:center;border-radius:4px;outline:none;padding:0 6px}.z-pagination-jump input:focus{border-color:var(--z-primary)}.z-table{border-collapse:separate;border-spacing:0;width:100%;min-width:820px}.z-table th{height:40px;color:var(--z-text);border-top:1px solid var(--z-border);border-bottom:1px solid var(--z-border);background:var(--z-bg);text-align:left;white-space:nowrap;padding:0 12px;font-weight:400}.z-table td{border-bottom:1px solid var(--z-border);height:48px;color:var(--z-text);vertical-align:middle;padding:8px 12px}.z-table tbody tr:hover td{background:var(--z-bg)}.table-link{color:var(--z-primary)}.table-actions{align-items:center;gap:4px;display:flex}.modal-backdrop,.drawer-backdrop{z-index:80;background:#0811266b;position:fixed;inset:0}.modal-backdrop{justify-content:center;align-items:center;padding:24px;display:flex}.modal{background:#fff;border-radius:8px;flex-direction:column;width:min(520px,100%);max-height:calc(100vh - 48px);display:flex;box-shadow:0 20px 60px #0811263d}.modal-header,.drawer-header{border-bottom:1px solid var(--z-divider);flex:0 0 56px;justify-content:space-between;align-items:center;padding:0 20px;display:flex}.modal-title,.drawer-title{color:var(--z-text-strong);margin:0;font-size:16px;font-weight:600}.modal-body,.drawer-body{flex:1;min-height:0;padding:20px;overflow-y:auto}.modal-footer,.drawer-footer{border-top:1px solid var(--z-divider);flex:0 0 64px;justify-content:flex-end;align-items:center;gap:8px;padding:0 20px;display:flex}.drawer{background:#fff;flex-direction:column;width:min(520px,100%);height:100%;display:flex;position:absolute;top:0;right:0;box-shadow:-12px 0 32px #0811262e}.empty-state{min-height:260px;color:var(--z-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state>svg{color:var(--z-text-weak);margin-bottom:16px}.toast-stack{z-index:120;position:fixed;top:24px;left:50%;transform:translate(-50%)}.toast{background:#fff;border-radius:8px;align-items:center;gap:8px;min-width:240px;height:52px;padding:0 16px;display:flex;box-shadow:0 5px 20px #0043ca1a}.toast-success{background:var(--z-success);border-radius:50%;flex:0 0 16px;width:16px;height:16px}.toast-success-icon{color:var(--z-success);flex:none}.serial-column{width:68px}.projects-layout{background:#fff;border-radius:8px;grid-template-columns:286px minmax(0,1fr);height:100%;min-height:0;display:grid;overflow:hidden}.group-tree{border-right:1px solid var(--z-divider);background:#fbfcfe;flex-direction:column;min-width:0;min-height:0;padding:14px 10px;display:flex;overflow:hidden}.group-tree-head{height:36px;color:var(--z-text-strong);justify-content:space-between;align-items:center;padding:0 6px 8px 10px;font-weight:600;display:flex}.group-item{width:100%;height:38px;color:var(--z-text);text-align:left;cursor:pointer;background:0 0;border-radius:4px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 10px;display:grid}.group-item:hover{background:var(--z-bg)}.group-item.is-active{color:var(--z-primary);background:var(--z-primary-soft)}.group-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.group-item b{color:var(--z-text-weak);font-size:12px;font-weight:400}.group-tree-row{border-radius:4px;align-items:center;height:38px;display:flex;position:relative}.group-tree-row:hover{background:var(--z-bg)}.group-tree-row.is-active{color:var(--z-primary);background:var(--z-primary-soft)}.group-toggle{width:18px;height:28px;color:var(--z-text-weak);cursor:pointer;background:0 0;flex:0 0 18px;place-items:center;padding:0;display:grid}.group-toggle.is-open svg{transform:rotate(90deg)}.group-toggle:disabled{visibility:hidden}.group-tree-name{min-width:0;height:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;flex:1;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:6px;padding:0 8px 0 2px;display:grid}.group-tree-name span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.group-tree-name b{color:var(--z-text-weak);font-size:12px;font-weight:400}.group-row-actions{opacity:0;background:linear-gradient(90deg, transparent, var(--z-bg) 10px);pointer-events:none;flex:none;padding-left:12px;transition:opacity .15s;display:flex;position:absolute;top:6px;right:4px}.group-tree-row.is-active .group-row-actions{background:linear-gradient(90deg, transparent, var(--z-primary-soft) 10px)}.group-tree-row:hover .group-row-actions,.group-tree-row:focus-within .group-row-actions{opacity:1;pointer-events:auto}.group-row-actions .z-icon-button{width:26px;height:26px}.group-tree-scroll{flex:1;min-height:0;overflow:hidden auto}.storage-budget{border-top:1px solid var(--z-divider);flex:none;margin:12px 8px 0;padding-top:16px}.storage-budget>div{color:var(--z-text-muted);justify-content:space-between;gap:8px;font-size:12px;display:flex}.storage-budget b{color:var(--z-text);font-weight:400}.storage-track{background:var(--z-divider);border-radius:3px;height:5px;margin-top:10px;display:block;overflow:hidden}.storage-track i{border-radius:inherit;background:var(--z-primary);height:100%;display:block}.projects-main{flex-direction:column;min-width:0;min-height:0;padding:0 20px 16px;display:flex;overflow:hidden}.projects-toolbar{border-bottom:1px solid var(--z-divider);flex:0 0 56px;justify-content:space-between;align-items:center;gap:16px;height:56px;display:flex}.projects-toolbar h1{color:var(--z-text-strong);margin:0;font-size:18px;font-weight:500}.projects-toolbar>div>span{color:var(--z-text-muted);font-size:12px}.projects-toolbar-actions{align-items:center;gap:8px;display:flex}.view-segment{border:1px solid var(--z-border);border-radius:4px;height:32px;display:inline-flex;overflow:hidden}.view-segment button{width:34px;height:30px;color:var(--z-text-muted);cursor:pointer;background:#fff;justify-content:center;align-items:center;display:inline-flex}.view-segment button+button{border-left:1px solid var(--z-border)}.view-segment button.is-active{color:var(--z-primary);background:var(--z-primary-soft)}.prototype-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.projects-results{flex:1;min-height:0;padding:16px 4px 12px 0;overflow:auto}.prototype-card{border:1px solid var(--z-border);cursor:pointer;background:#fff;border-radius:6px;min-width:0;transition:border-color .15s,box-shadow .15s;overflow:hidden;container:prototype-card/inline-size}.prototype-card:focus-visible{border-color:var(--z-primary);outline:2px solid #d6edff}.prototype-card:hover{border-color:#b5cced;box-shadow:0 6px 18px #244b801f}.prototype-preview{aspect-ratio:16/9;border-bottom:1px solid var(--z-divider);background:var(--z-bg);display:block;position:relative;overflow:hidden}.prototype-preview img{object-fit:cover;object-position:top left;width:100%;height:100%;transition:transform .2s;display:block}.prototype-card:hover .prototype-preview img{transform:scale(1.015)}.prototype-preview>span{height:100%;color:var(--z-text-weak);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.preview-loading svg,.preview-spinner{animation:.9s linear infinite preview-spin}.preview-loading.is-failed{color:var(--z-danger)}.preview-loading.is-failed svg{animation:none}@keyframes preview-spin{to{transform:rotate(360deg)}}.prototype-preview>i{color:#fff;background:#081126b8;border-radius:4px;align-items:center;gap:4px;height:24px;padding:0 8px;font-size:12px;font-style:normal;display:inline-flex;position:absolute;bottom:8px;right:8px}.prototype-card-body{min-height:68px;padding:14px 14px 12px}.prototype-title-row{align-items:center;gap:8px;min-width:0;display:flex}.prototype-title-row .prototype-name{flex:1;min-width:0}.prototype-title-tags{flex:none;align-items:center;gap:4px;display:inline-flex}.prototype-name{color:var(--z-text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;display:block;overflow:hidden}.prototype-name:hover{color:var(--z-primary)}.prototype-meta,.prototype-status{color:var(--z-text-muted);justify-content:space-between;align-items:center;gap:8px;margin-top:10px;font-size:12px;display:flex}.project-share-link,.table-share-link{min-width:0;color:var(--z-primary);align-items:center;gap:5px;font-size:12px;display:flex}.project-share-link{background:var(--z-primary-soft);border-radius:4px;height:28px;margin-top:8px;padding:0 7px}.project-share-link span,.table-share-link span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-share-link svg,.table-share-link svg{flex:none}.table-share-link{max-width:220px}.table-share-cell{align-items:center;gap:4px;min-width:0;display:flex}.table-share-cell .table-share-link{flex:1;min-width:0}.share-details-heading{justify-content:space-between;align-items:center;display:flex}.share-details-heading .z-icon-button{width:28px;height:28px}.table-copy-share{flex:0 0 26px;width:26px;height:26px}.prototype-meta span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.prototype-status{justify-content:flex-start;min-height:20px}.status-dot{color:var(--z-text-muted);white-space:nowrap;align-items:center;gap:5px;font-size:12px;display:inline-flex}.status-dot:before{content:"";background:var(--z-text-weak);border-radius:50%;width:6px;height:6px}.status-dot.is-on:before{background:var(--z-success)}.status-dot.is-share:before{background:var(--z-primary)}.prototype-actions{border-top:1px solid var(--z-divider);justify-content:flex-start;align-items:center;gap:2px;min-height:42px;padding:5px 6px;display:flex}.prototype-actions button{width:auto;min-width:32px;height:32px;color:var(--z-text-muted);white-space:nowrap;cursor:pointer;background:0 0;border-radius:4px;flex:none;justify-content:center;align-items:center;gap:3px;padding:0 2px;font-size:12px;display:inline-flex}.prototype-actions button.danger{margin-left:auto}@container prototype-card (max-width:310px){.prototype-actions button{flex:32px;width:32px;min-width:24px;padding:0}.prototype-actions .action-label{display:none}}@container prototype-card (max-width:360px){.prototype-actions.is-dense button{flex:32px;width:32px;min-width:24px;padding:0}.prototype-actions.is-dense .action-label{display:none}}.prototype-actions button:hover{color:var(--z-primary);background:var(--z-primary-soft)}.prototype-actions button.danger{color:var(--z-text-weak)}.prototype-actions button.danger:hover,.z-icon-button.danger:hover{color:var(--z-danger);background:var(--z-danger-bg)}.project-table .table-project-name{color:var(--z-text-strong);align-items:center;gap:10px;font-weight:600;display:flex}.table-project-name small{color:var(--z-text-weak);margin-top:3px;font-size:12px;font-weight:400;display:block}.table-thumb{aspect-ratio:16/9;border:1px solid var(--z-divider);width:64px;color:var(--z-text-weak);background:var(--z-bg);border-radius:4px;flex:0 0 64px;place-items:center;display:grid;overflow:hidden}.table-thumb img{object-fit:cover;width:100%;height:100%}.inline-error{color:var(--z-danger);background:var(--z-danger-bg);border:1px solid #ffd1cc;border-radius:4px;margin-bottom:12px;padding:10px 12px}.quota-input{display:flex}.quota-input .z-input{border-radius:4px 0 0 4px}.quota-input>span{height:32px;color:var(--z-text-muted);border:1px solid var(--z-border);background:var(--z-bg);border-left:0;border-radius:0 4px 4px 0;align-items:center;padding:0 10px;display:flex}.modal-wide{width:min(620px,100%)}.dialog-form{gap:18px;display:grid}.upload-drop{min-height:148px;color:var(--z-text-muted);cursor:default;background:#fbfcfe;border:1px dashed #b8c3d6;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:20px;display:flex}.upload-drop:hover,.upload-drop.has-file{color:var(--z-primary);border-color:var(--z-primary);background:var(--z-primary-soft)}.upload-drop input{display:none}.upload-drop b{color:var(--z-text-strong);font-weight:600}.upload-drop span{font-size:12px}.upload-choice-actions{justify-content:center;align-items:center;gap:8px;margin-top:8px;display:flex}.upload-bundle-drop{min-height:190px}.prototype-upload-progress{border:1px solid var(--z-divider);background:var(--z-bg);border-radius:4px;gap:8px;padding:12px;display:grid}.prototype-upload-progress>div{color:var(--z-text-muted);justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.prototype-upload-progress b{color:var(--z-primary);font-weight:500}.prototype-upload-progress-track{background:var(--z-divider);border-radius:4px;height:7px;display:block;overflow:hidden}.prototype-upload-progress-track i{border-radius:inherit;background:var(--z-primary);height:100%;transition:width .2s;display:block}.prototype-upload-progress-track.is-processing i{animation:1.2s ease-in-out infinite upload-processing}@keyframes upload-processing{0%,to{opacity:.55}50%{opacity:1}}.replace-note,.feature-callout{color:var(--z-text-muted);background:var(--z-primary-soft);border:1px solid #d6edff;border-radius:4px;align-items:flex-start;gap:10px;padding:12px;line-height:1.6;display:flex}.replace-note svg,.feature-callout svg{color:var(--z-primary);flex:none;margin-top:2px}.feature-callout b{color:var(--z-text-strong)}.feature-callout p,.share-switch-row p{color:var(--z-text-muted);margin:3px 0 0;font-size:12px}.readonly-link,.copy-field{overflow-wrap:anywhere;min-width:0;min-height:36px;color:var(--z-text-muted);border:1px solid var(--z-divider);background:var(--z-bg);border-radius:4px;align-items:center;padding:7px 10px;display:flex}.share-details-preview{overflow-wrap:anywhere;min-height:74px;color:var(--z-text);border:1px solid var(--z-divider);background:var(--z-bg);white-space:pre-wrap;border-radius:4px;margin:0;padding:10px 12px;font-family:inherit;font-size:12px;line-height:1.7}.copy-field{justify-content:space-between;gap:8px}.organization-layout{background:#fff;border-radius:8px;grid-template-columns:286px minmax(0,1fr);height:100%;min-height:0;display:grid;overflow:hidden}.department-panel{border-right:1px solid var(--z-divider);background:#fbfcfe;flex-direction:column;min-height:0;padding:14px 10px;display:flex;overflow:hidden}.department-panel>header{height:36px;color:var(--z-text-strong);justify-content:space-between;align-items:center;padding:0 6px 8px 10px;font-weight:600;display:flex}.department-tree{flex:1;min-height:0;overflow:hidden auto}.department-node{width:100%;height:38px;color:var(--z-text);border-radius:4px;align-items:center;display:flex;position:relative}.department-node:hover{background:var(--z-bg)}.department-node.is-active{background:var(--z-primary-soft)}.department-node.is-active .department-name{color:var(--z-primary)}.tree-chevron{width:18px;height:28px;color:var(--z-text-weak);cursor:pointer;background:0 0;flex:0 0 18px;place-items:center;padding:0;display:grid}.tree-chevron.is-open svg{transform:rotate(90deg)}.tree-chevron:disabled{visibility:hidden}.department-name{min-width:0;height:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;flex:1;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:6px;padding:0 8px 0 2px;display:grid}.department-name span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.department-name b{color:var(--z-text-weak);font-size:12px;font-weight:400}.department-tools{opacity:0;background:linear-gradient(90deg, transparent, var(--z-bg) 10px);pointer-events:none;align-items:center;padding-left:12px;transition:opacity .15s;display:flex;position:absolute;top:6px;right:4px}.department-node.is-active .department-tools{background:linear-gradient(90deg, transparent, var(--z-primary-soft) 10px)}.department-node:hover .department-tools,.department-node:focus-within .department-tools{opacity:1;pointer-events:auto}.department-tools .z-icon-button{width:26px;height:26px}.department-tools .z-icon-button:hover{color:var(--z-primary)}.department-tools .z-icon-button:last-child:hover{color:var(--z-danger)}.people-panel{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.people-head{padding:10px 20px}.people-body{flex-direction:column;flex:1;min-height:0;padding:12px 20px 16px;display:flex;overflow:hidden}.people-total{color:var(--z-text-muted);margin:0;font-size:12px}.people-search{width:220px}.people-table td:nth-child(2) b,.people-table td:nth-child(2) small{display:block}.people-table td:nth-child(2) small{color:var(--z-text-muted);margin-top:3px;font-size:12px}.password-generate{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.one-time-secret{text-align:center;flex-direction:column;align-items:center;padding:12px 0;display:flex}.one-time-secret>svg{width:44px;height:44px;color:var(--z-success);background:var(--z-success-bg);border-radius:50%;padding:10px}.one-time-secret h3{color:var(--z-text-strong);margin:16px 0 6px;font-size:17px}.one-time-secret p{color:var(--z-text-muted);margin:0}.one-time-secret>span{border:1px solid var(--z-border);background:var(--z-bg);border-radius:4px;justify-content:space-between;align-items:center;gap:10px;min-width:280px;height:48px;margin-top:20px;padding:0 8px 0 16px;display:flex}.one-time-secret code{color:var(--z-text-strong);font-size:16px;font-weight:600}.one-time-secret button{width:34px;height:34px;color:var(--z-primary);cursor:pointer;background:#fff;border-radius:4px;place-items:center;display:grid}.user-delivery dl{border:1px solid var(--z-divider);background:var(--z-bg);text-align:left;border-radius:4px;width:min(100%,420px);margin:18px 0 0;padding:10px 16px}.user-delivery dl div{border-bottom:1px solid var(--z-divider);grid-template-columns:88px minmax(0,1fr);align-items:center;min-height:36px;display:grid}.user-delivery dl div:last-child{border-bottom:0}.user-delivery dt{color:var(--z-text-muted)}.user-delivery dd{overflow-wrap:anywhere;min-width:0;color:var(--z-text-strong);margin:0}.one-time-secret .copy-delivery-button{border:1px solid var(--z-border);gap:6px;width:auto;height:32px;margin-top:16px;padding:0 14px;display:inline-flex}.admin-projects-layout{background:#fff;border-radius:8px;grid-template-columns:286px minmax(0,1fr);height:100%;min-height:0;display:grid;overflow:hidden}.admin-project-depts{border-right:1px solid var(--z-divider);background:#fbfcfe;padding:0 8px 14px;overflow:hidden}.admin-project-depts>header{height:56px;color:var(--z-text-strong);align-items:center;padding:0 10px;font-weight:600;display:flex}.admin-dept-item{width:100%;height:36px;color:var(--z-text);text-align:left;cursor:pointer;background:0 0;border-radius:4px;justify-content:space-between;align-items:center;gap:8px;display:flex}.admin-dept-item:hover,.admin-dept-item.is-active{color:var(--z-primary);background:var(--z-primary-soft)}.admin-dept-item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-dept-item b{color:var(--z-text-weak);font-size:12px;font-weight:400}.admin-project-main{flex-direction:column;min-width:0;min-height:0;padding:0 20px 16px;display:flex;overflow:hidden}.admin-group-filter{border-bottom:1px solid var(--z-divider);gap:6px;margin-bottom:18px;padding-bottom:12px;display:flex;overflow-x:auto}.admin-group-filter button{height:28px;color:var(--z-text-muted);white-space:nowrap;cursor:pointer;background:0 0;border-radius:4px;padding:0 10px}.admin-group-filter button.is-active{color:var(--z-primary);background:var(--z-primary-soft)}.table-thumb{position:relative}.analytics-page{height:100%;min-height:0;overflow:auto}.analytics-head{border-bottom:1px solid var(--z-divider);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;height:56px;padding:0 20px;display:flex}.analytics-head h1{color:var(--z-text-strong);margin:0;font-size:18px;font-weight:500}.analytics-section h2{color:var(--z-text-strong);margin:0;font-size:16px;font-weight:500}.analytics-head p{color:var(--z-text-muted);margin:5px 0 0;font-size:12px}.analytics-head>span{color:var(--z-success);align-items:center;gap:6px;font-size:12px;display:inline-flex}.metric-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.metric-card{border:1px solid var(--z-divider);background:#fff;border-radius:6px;align-items:flex-start;gap:12px;min-width:0;padding:16px;display:flex}.metric-icon{width:34px;height:34px;color:var(--z-primary);background:var(--z-primary-soft);border-radius:6px;flex:0 0 34px;place-items:center;display:grid}.metric-card>div{flex-direction:column;min-width:0;display:flex}.metric-card span,.metric-card small{color:var(--z-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.metric-card b{color:var(--z-text-strong);margin:5px 0 3px;font-size:23px}.metric-card small{color:var(--z-text-weak)}.analytics-columns{grid-template-columns:minmax(0,1.4fr) minmax(360px,.8fr);gap:14px;margin-top:14px;display:grid}.analytics-section{background:#fff;border-radius:8px;min-width:0;padding:18px 20px}.analytics-section>header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.analytics-section h2{font-size:16px}.analytics-section>header span{color:var(--z-text-muted);font-size:12px}.visit-ranking{gap:13px;display:grid}.ranking-row{grid-template-columns:22px minmax(0,1fr) 54px;align-items:center;gap:10px;display:grid}.ranking-row>b{color:var(--z-text-muted);text-align:center}.ranking-row:nth-child(-n+3)>b{color:var(--z-primary)}.ranking-row>div>span{justify-content:space-between;gap:12px;display:flex}.ranking-row strong{color:var(--z-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.ranking-row small{color:var(--z-text-muted);font-size:12px}.ranking-row i{background:var(--z-divider);border-radius:3px;height:5px;margin-top:7px;display:block;overflow:hidden}.ranking-row em{border-radius:inherit;background:var(--z-primary);height:100%;display:block}.ranking-row>strong{text-align:right}.storage-overview{grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.storage-icon{width:48px;height:48px;color:var(--z-primary);background:var(--z-primary-soft);border-radius:6px;place-items:center;display:grid}.storage-overview div{flex-direction:column;gap:4px;display:flex}.storage-overview b{color:var(--z-text-strong);font-size:20px}.storage-overview div span,.storage-overview>strong{color:var(--z-text-muted);font-size:12px}.storage-large-track{background:var(--z-divider);border-radius:4px;height:8px;margin-top:18px;display:block;overflow:hidden}.storage-large-track i{background:var(--z-primary);height:100%;display:block}.budget-rules{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px;display:grid}.budget-rules p{border:1px solid var(--z-divider);border-radius:4px;flex-direction:column;gap:5px;margin:0;padding:10px;display:flex}.budget-rules b{color:var(--z-text-strong)}.budget-rules span{color:var(--z-text-muted);font-size:12px}.backup-status-summary{color:var(--z-text-muted);flex-wrap:wrap;gap:6px 16px;margin-top:12px;font-size:12px;display:flex}.login-section{margin-top:14px}.profile-summary{border-bottom:1px solid var(--z-divider);align-items:center;gap:14px;padding-bottom:20px;display:flex}.profile-avatar{color:#fff;background:var(--z-primary);border-radius:50%;place-items:center;width:52px;height:52px;font-size:19px;display:grid}.profile-summary h2{color:var(--z-text-strong);margin:0 0 5px;font-size:18px}.profile-summary p{color:var(--z-text-muted);margin:0}.profile-details{max-width:620px;margin:20px 0 0}.profile-details>div{border-bottom:1px solid var(--z-divider);grid-template-columns:160px minmax(0,1fr);align-items:center;min-height:48px;display:grid}.profile-details dt{color:var(--z-text-muted);align-items:center;gap:7px;display:flex}.profile-details dd{color:var(--z-text-strong);margin:0}.copy-field button{width:28px;height:28px;color:var(--z-primary);cursor:pointer;background:0 0;border-radius:4px;flex:0 0 28px;place-items:center;display:grid}.copy-field button:hover{background:#d6edff}.share-switch-row{border-bottom:1px solid var(--z-divider);justify-content:space-between;align-items:center;gap:16px;padding-bottom:16px;display:flex}.share-switch-row b{color:var(--z-text-strong)}.checkbox-line{color:var(--z-text-muted);align-items:center;gap:8px;font-size:12px;display:flex}.square-page{background:#fff;border-radius:8px;flex-direction:column;height:100%;min-height:0;padding:0 20px 16px;display:flex;overflow:hidden}.square-head{border-bottom:1px solid var(--z-divider);flex:0 0 56px;justify-content:space-between;align-items:center;gap:20px;height:56px;display:flex}.square-head h1{color:var(--z-text-strong);margin:0;font-size:18px;font-weight:500}.square-head p{color:var(--z-text-muted);margin:0}.category-tabs{border-bottom:1px solid var(--z-divider);flex-wrap:wrap;flex:none;gap:6px;margin-top:12px;padding-bottom:12px;display:flex;overflow:visible}.category-tabs button{height:32px;color:var(--z-text-muted);white-space:nowrap;cursor:pointer;background:0 0;border-radius:4px;padding:0 14px}.category-tabs button:hover,.category-tabs button.is-active{color:var(--z-primary);background:var(--z-primary-soft)}.square-toolbar{height:48px;color:var(--z-text-muted);flex:0 0 48px;justify-content:space-between;align-items:center;font-size:12px;display:flex}.sort-segment{align-items:center;gap:4px;display:inline-flex}.sort-segment button{height:28px;color:var(--z-text-muted);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.sort-segment button.is-active{color:var(--z-primary);background:var(--z-primary-soft)}.square-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.square-results{flex:1;min-height:0;padding:0 4px 12px 0;overflow:auto}.square-card{color:inherit;text-decoration:none;display:block}.square-card .prototype-card-body{display:block}.panel-subtitle{color:var(--z-text-muted);margin:4px 0 0;font-size:12px}.expiry-select{width:110px}.category-create-input{width:220px}.category-table th:nth-child(2),.category-table td:nth-child(2),.category-table th:nth-child(3),.category-table td:nth-child(3){width:120px}.category-table th:last-child,.category-table td:last-child{width:140px}.category-table tr.is-editing td{background:var(--z-primary-soft)}.category-order-actions{align-items:center;gap:4px;display:inline-flex}.category-order-note{color:var(--z-text-muted);font-size:12px}.inline-edit{max-width:260px}.code-cell{color:var(--z-text-strong);align-items:center;gap:7px;font-family:Consolas,monospace;font-weight:600;display:inline-flex}.inline-error{justify-content:space-between;align-items:center;gap:8px;display:flex}@media (max-width:1200px){.auth-layout{grid-template-columns:1fr}.auth-brand{min-height:210px;padding:28px}.auth-brand-main h1{font-size:26px}.auth-brand-main p,.auth-brand-foot{display:none}.auth-main{padding:32px 24px}.topnav-user-meta,.topnav-divider{display:none}.topnav{padding:0 10px}.topnav-brand-title,.topnav-tool{display:none}.topnav-menu{flex:1;margin-left:10px;display:flex}.topnav-menu a{padding:0 10px;font-size:14px}.topnav-user{padding:0 4px}.app-main-layout{flex-direction:column}.sidenav{border-right:0;border-bottom:1px solid var(--z-divider);scrollbar-width:none;flex:0 0 44px;width:100%;height:44px;padding:4px 8px;display:flex;overflow:auto hidden}.sidenav::-webkit-scrollbar{display:none}.sidenav-section{align-items:center;display:flex}.sidenav-heading{display:none}.sidenav-link{flex:none}.sidenav-link+.sidenav-link{margin-top:0;margin-left:4px}.content-scroll{padding:12px}.page-panel-body{padding:14px}.projects-layout{grid-template-columns:1fr}.group-tree{display:none}.projects-main{padding:14px}.projects-toolbar{flex-direction:column;align-items:flex-start}.projects-toolbar-actions{flex-wrap:wrap;width:100%}.projects-toolbar-actions .z-search{flex:1;min-width:180px}.prototype-grid{grid-template-columns:1fr}.square-page{padding:14px}.square-head{flex-direction:column;align-items:flex-start}.square-head .z-search{width:100%}.square-grid,.organization-layout,.admin-projects-layout{grid-template-columns:1fr}.department-panel,.admin-project-depts{display:none}.people-panel,.admin-project-main{padding:0}.people-body{padding:12px 14px 14px}.people-total{display:none}.people-search{width:min(120px,34vw)}.people-head .z-button-primary{width:32px;padding:0;font-size:0}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-columns{grid-template-columns:1fr}.analytics-head{padding:0 14px}.category-create-input{width:160px}}
