.publish-studio{background:var(--cad-canvas);color:var(--cad-ink);flex-direction:column;height:100%;min-height:0;display:flex}.publish-studio>*{flex:none}.publish-studio>.publish-studio__body{flex:1 1 0}.publish-studio h2,.publish-studio h3,.publish-studio p{margin:0}.publish-studio__header{background:var(--cad-surface);border-bottom:1px solid var(--cad-line);justify-content:space-between;align-items:center;gap:16px;padding:14px 24px;display:flex}.publish-studio__heading h2{letter-spacing:-.01em;font-size:1.375rem}.publish-studio__heading p{color:var(--cad-text-2);margin-top:2px;font-size:.9375rem}.publish-studio__header-actions{flex:none;align-items:center;gap:8px;display:flex}.publish-studio .community-action{border:1px solid var(--cad-control-border);justify-content:center;gap:6px;min-height:40px}.publish-studio .community-action:hover:not(:disabled){border-color:var(--cad-line-strong)}.publish-studio .community-action--primary,.publish-studio .community-action--primary:hover:not(:disabled){border-color:var(--cad-accent)}.publish-studio .community-action:disabled{cursor:not-allowed;opacity:.55}.publish-studio :is(button,input,textarea,select,summary,a):focus-visible{outline:3px solid var(--cad-focus);outline-offset:2px}.publish-icon{flex:none}.publish-icon--spinner{animation:.9s linear infinite publish-spin}@keyframes publish-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.publish-icon--spinner{animation-duration:3s}}.publish-studio__panes{background:var(--cad-surface);border-bottom:1px solid var(--cad-line);gap:8px;padding:8px 16px;display:none;position:sticky;top:0}.publish-studio__panes button{background:var(--cad-surface);border:1px solid var(--cad-control-border);border-radius:var(--cad-radius-md);color:var(--cad-ink);cursor:pointer;font:inherit;flex:1;min-height:40px;font-weight:700}.publish-studio__panes button[aria-pressed=true]{background:var(--cad-accent-soft);border-color:var(--cad-accent);color:var(--cad-accent)}.publish-studio__body{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(380px,460px) minmax(0,1fr);gap:0;min-height:0;display:grid}.publish-studio__form-column,.publish-studio__preview-column{min-width:0;min-height:0;overflow-y:auto}.publish-studio__form-column{background:var(--cad-surface);border-right:1px solid var(--cad-line);padding:24px}.publish-studio__preview-column{padding:20px 24px}.publish-studio__form{gap:24px;display:grid}.publish-field{border:0;gap:6px;min-width:0;margin:0;padding:0;display:grid}.publish-field>label,.publish-field>legend,.publish-field__label,.publish-story__head label{color:var(--cad-ink);padding:0;font-size:.9375rem;font-weight:750}.publish-field :is(input[type=text],textarea){background:var(--cad-surface);border:1px solid var(--cad-control-border);border-radius:var(--cad-radius-md);box-sizing:border-box;color:var(--cad-ink);font:inherit;min-height:var(--cad-control-height);width:100%;padding:9px 12px}.publish-field textarea{resize:vertical;line-height:1.5}.publish-field :is(input,textarea)[readonly]{background:var(--cad-surface-subtle);color:var(--cad-text-2)}.publish-field :is(input,textarea):disabled{background:var(--cad-surface-subtle);color:var(--cad-muted);cursor:not-allowed}.publish-field [aria-invalid=true]{border-color:var(--cad-danger)}.publish-field__hint{color:var(--cad-muted);font-size:.8125rem;line-height:1.45}.publish-field__meta{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.publish-field__counter{color:var(--cad-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.8125rem}.publish-field__counter[data-over=true]{color:var(--cad-danger);font-weight:750}.publish-field__error{color:var(--cad-danger);align-items:flex-start;gap:6px;font-size:.875rem;font-weight:650;line-height:1.4;display:flex}.publish-field__error .publish-icon{margin-top:1px}.publish-link-button{color:var(--cad-accent);cursor:pointer;font:inherit;background:0 0;border:0;justify-self:start;padding:2px 0;font-size:.8125rem;font-weight:700;text-decoration:underline}.publish-studio__callout{background:var(--cad-surface-subtle);border:1px solid var(--cad-line);border-radius:var(--cad-radius-md);color:var(--cad-text-2);padding:10px 12px;font-size:.875rem;line-height:1.45}.publish-studio__callout--error{background:var(--cad-danger-bg);border-color:var(--cad-danger-border);color:var(--cad-danger)}.publish-studio__inline-actions{flex-wrap:wrap;gap:8px;display:flex}.publish-cover__figure{aspect-ratio:16/10;background:var(--cad-surface-subtle);border:1px solid var(--cad-line);border-radius:var(--cad-radius-lg);justify-content:center;align-items:center;margin:0;display:flex;overflow:hidden}.publish-cover__figure img{object-fit:contain;width:100%;height:100%;display:block}.publish-cover__empty{color:var(--cad-muted);place-items:center;gap:6px;font-size:.875rem;display:grid}.publish-cover__empty .publish-icon{width:32px;height:32px}.publish-cover__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.publish-story__head{justify-content:space-between;align-items:center;gap:12px;display:flex}.publish-toolbar{background:var(--cad-surface-subtle);border:1px solid var(--cad-line);border-radius:var(--cad-radius-md);flex-wrap:wrap;gap:4px;padding:4px;display:flex}.publish-toolbar[hidden],.publish-story textarea[hidden]{display:none}.publish-toolbar button{background:var(--cad-surface);border:1px solid var(--cad-line);border-radius:var(--cad-radius-sm);color:var(--cad-ink);cursor:pointer;font:inherit;min-width:36px;min-height:32px;padding:0 10px;font-size:.875rem}.publish-toolbar button:hover:not(:disabled){background:var(--cad-surface-hover)}.publish-toolbar button:disabled{cursor:not-allowed;opacity:.55}.publish-story__preview{background:var(--cad-surface);border:1px solid var(--cad-line);border-radius:var(--cad-radius-md);min-height:200px;padding:14px}.publish-segment{background:var(--cad-surface-subtle);border:1px solid var(--cad-line);border-radius:var(--cad-radius-md);padding:2px;display:inline-flex}.publish-segment button{border-radius:var(--cad-radius-sm);color:var(--cad-text-2);cursor:pointer;font:inherit;background:0 0;border:0;min-height:30px;padding:0 12px;font-size:.8125rem;font-weight:700}.publish-segment .publish-segment__icon{justify-content:center;align-items:center;width:34px;padding:0;display:inline-flex}.publish-segment .publish-segment__icon .community-app-glyph{stroke-width:1.8px;width:18px;height:18px}.publish-segment button[aria-pressed=true]{background:var(--cad-surface);box-shadow:var(--cad-shadow);color:var(--cad-accent)}.publish-tags__box{background:var(--cad-surface);border:1px solid var(--cad-control-border);border-radius:var(--cad-radius-md);flex-wrap:wrap;align-items:center;gap:6px;padding:6px;display:flex}.publish-tags__box[data-invalid]{border-color:var(--cad-danger)}.publish-tags__box:focus-within{outline:3px solid var(--cad-focus);outline-offset:2px}.publish-tags__box ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.publish-tags__box ul:empty{display:none}.publish-tags__box li{background:var(--cad-accent-soft);border-radius:var(--cad-radius-pill);color:var(--cad-accent);align-items:center;gap:2px;padding:2px 4px 2px 10px;font-size:.875rem;font-weight:650;display:inline-flex}.publish-tags__box li button{border-radius:var(--cad-radius-sm);color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;padding:3px;display:inline-flex}.publish-tags__box li button .publish-icon{width:14px;height:14px}.publish-field .publish-tags__box input[type=text]{border:0;outline:0;flex:120px;width:auto;min-width:100px;min-height:32px;padding:4px 6px}.publish-tags__box input:focus-visible{outline:0}.publish-tags__suggestions{flex-wrap:wrap;gap:6px;display:flex}.publish-tags__suggestions button{background:var(--cad-surface);border:1px dashed var(--cad-control-border);border-radius:var(--cad-radius-pill);color:var(--cad-text-2);cursor:pointer;font:inherit;padding:3px 10px;font-size:.8125rem;font-weight:650}.publish-tags__suggestions button:hover{background:var(--cad-surface-hover)}.publish-licenses legend{margin-bottom:6px}.publish-licenses__cards{grid-template-columns:1fr 1fr;gap:10px;display:grid}.publish-license-card{background:var(--cad-surface);border:1px solid var(--cad-control-border);border-radius:var(--cad-radius-lg);cursor:pointer;gap:4px;padding:12px 12px 12px 40px;display:grid;position:relative}.publish-license-card input{width:18px;height:18px;accent-color:var(--cad-accent);margin:0;position:absolute;top:14px;left:12px}.publish-license-card:has(input:checked){background:var(--cad-accent-soft);border-color:var(--cad-accent);box-shadow:inset 0 0 0 1px var(--cad-accent)}.publish-license-card:has(input:focus-visible){outline:3px solid var(--cad-focus);outline-offset:2px}.publish-license-card__name{color:var(--cad-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.75rem;font-weight:700}.publish-license-card__text{color:var(--cad-text-2);font-size:.8125rem;line-height:1.4}.publish-licenses:disabled .publish-license-card{cursor:not-allowed;opacity:.7}.publish-slug{background:var(--cad-surface);border:1px solid var(--cad-control-border);border-radius:var(--cad-radius-md);align-items:stretch;min-width:0;display:flex}.publish-slug>span{background:var(--cad-surface-subtle);border-right:1px solid var(--cad-line);color:var(--cad-muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;max-width:55%;padding:0 10px;font-size:.875rem;display:flex;overflow:hidden}.publish-field .publish-slug input[type=text]{border:0;flex:1;min-width:0}.publish-slug:has([aria-invalid=true]){border-color:var(--cad-danger)}.publish-slug__url{color:var(--cad-text-2);overflow-wrap:anywhere}.publish-confirm__row{background:var(--cad-surface-subtle);border:1px solid var(--cad-line);border-radius:var(--cad-radius-md);align-items:flex-start;gap:12px;padding:12px;display:flex}.publish-confirm__row input{accent-color:var(--cad-accent);flex:none;width:20px;height:20px;margin:1px 0 0}.publish-confirm__row label{font-size:.9375rem;font-weight:650;line-height:1.4}.publish-manage{border-top:1px solid var(--cad-line);gap:12px;padding-top:12px;display:grid}.publish-manage summary{color:var(--cad-text-2);cursor:pointer;font-size:.875rem;font-weight:700}.publish-manage[open]>summary{margin-bottom:12px}.publish-manage .private-cad-export__withdraw{gap:10px;display:grid}.publish-manage .private-cad-export__withdraw h4,.publish-manage .private-cad-export__withdraw p{margin:0}.publish-manage .private-cad-export__withdraw-confirm{background:var(--cad-surface-subtle);border:1px solid var(--cad-line-strong);border-radius:var(--cad-radius-md);gap:8px;padding:12px;display:grid}.publish-manage .private-cad-export__actions{flex-wrap:wrap;gap:8px;display:flex}.publish-manage .private-cad-export__withdraw button{background:var(--cad-surface);border:1px solid var(--cad-control-border);border-radius:var(--cad-radius-md);color:var(--cad-ink);cursor:pointer;font:inherit;min-height:40px;padding:0 14px;font-weight:700}.publish-manage .private-cad-export__withdraw button:disabled{cursor:not-allowed;opacity:.55}.publish-success{justify-items:start;gap:14px;display:grid}.publish-success__badge{background:var(--cad-success-bg);border:1px solid var(--cad-success-border);color:var(--cad-success);border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;display:inline-flex}.publish-success__badge .publish-icon{stroke-width:2.5px;width:40px;height:40px}.publish-success h3{letter-spacing:-.01em;font-size:1.75rem}.publish-success>p{color:var(--cad-text-2);line-height:1.5}.publish-success__link code{background:var(--cad-surface-subtle);border:1px solid var(--cad-line);border-radius:var(--cad-radius-md);overflow-wrap:anywhere;padding:10px 12px;font-size:.875rem;display:block}.publish-success__actions{flex-wrap:wrap;gap:8px;display:flex}.publish-success__actions a{text-decoration:none}.publish-success .publish-manage{justify-self:stretch;margin-top:12px}.publish-preview{gap:12px;display:grid}.publish-preview__bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.publish-preview__bar h3{color:var(--cad-text-2);font-size:.875rem;font-weight:700}.publish-preview__toggles{flex-wrap:wrap;gap:8px;display:flex}.publish-preview__stage{justify-content:center;min-width:0;display:flex}.publish-preview__frame{background:var(--cad-canvas);border:1px solid var(--cad-line-strong);border-radius:var(--cad-radius-lg);box-sizing:border-box;color:var(--cad-ink);pointer-events:none;width:100%;padding:20px;container-type:inline-size}.publish-preview__frame[data-device=phone]{max-width:390px;padding:14px}.publish-preview__frame .public-release{--public-release-side:340px}.publish-preview__placeholder{color:var(--cad-muted);font-style:italic}.publish-preview__frame .public-release__empty-visual{color:var(--cad-muted)}@container (width<=760px){.public-release__hero,.public-release__layout{grid-template-columns:minmax(0,1fr)}}@container (width<=520px){.public-release dl{grid-template-columns:minmax(0,1fr);gap:2px}.public-release dd{margin-bottom:8px}.public-release__preview{min-height:200px}}.publish-studio__notice{background:var(--cad-warning-bg);border-top:1px solid var(--cad-warning-border);color:var(--cad-ink);gap:4px;padding:10px 24px;font-size:.875rem;line-height:1.45;display:grid}.publish-studio__notice[hidden]{display:none}.publish-studio__notice details{color:var(--cad-text-2)}.publish-studio__notice summary{cursor:pointer;font-weight:700}.publish-studio__notice code{overflow-wrap:anywhere}.publish-studio__footer{background:var(--cad-surface);border-top:1px solid var(--cad-line);justify-content:space-between;align-items:center;gap:16px;padding:12px 24px;display:flex}.publish-steps{flex-wrap:wrap;align-items:center;gap:6px 18px;margin:0;padding:0;list-style:none;display:flex}.publish-steps li{color:var(--cad-muted);align-items:center;gap:6px;font-size:.875rem;font-weight:700;display:inline-flex}.publish-steps li[data-state=working]{color:var(--cad-accent)}.publish-steps li[data-state=done]{color:var(--cad-success)}.publish-steps li[data-state=error]{color:var(--cad-danger)}.publish-steps__icon{display:inline-flex}.publish-steps__icon .publish-icon{width:18px;height:18px}.publish-studio__publish{min-width:160px;min-height:44px}@media (width<=1023px){.publish-studio__panes{display:flex}.publish-studio__body{grid-template-columns:minmax(0,1fr)}.publish-studio[data-pane=form] .publish-studio__preview-column,.publish-studio[data-pane=preview] .publish-studio__form-column{display:none}.publish-studio__form-column{border-right:0;padding:16px}.publish-studio__preview-column{padding:16px}.publish-studio__header{padding:12px 16px}.publish-studio__notice,.publish-studio__footer{padding:10px 16px}}@media (width<=520px){.publish-studio__heading h2{font-size:1.125rem}.publish-studio__heading p,.publish-studio__close span{display:none}.publish-studio__header-actions .community-action{padding:0 10px}.publish-licenses__cards{grid-template-columns:minmax(0,1fr)}.publish-studio__footer{flex-direction:column;align-items:stretch;gap:10px}.publish-steps{gap:6px 12px}.publish-studio__publish{width:100%}.publish-success h3{font-size:1.5rem}}.download-panel{background:var(--cad-surface);color:var(--cad-ink);gap:16px;padding:20px;display:grid}.download-panel h2,.download-panel p{margin:0}.download-panel h2{font-size:1.25rem}.download-panel__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.download-panel__header p{color:var(--cad-text-2);margin-top:4px;font-size:.875rem;line-height:1.45}.download-panel .community-action{white-space:nowrap;gap:6px;min-height:40px}.download-panel .community-action:disabled{cursor:not-allowed;opacity:.55}.download-panel :is(button,summary):focus-visible{outline:3px solid var(--cad-focus);outline-offset:2px}.download-panel__rows{gap:12px;display:grid}.download-panel__row{border-top:1px solid var(--cad-line);justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.download-panel__row:first-child{border-top:0;padding-top:0}.download-panel__row>div{gap:2px;min-width:0;display:grid}.download-panel__row span{color:var(--cad-muted);font-size:.8125rem}.download-panel__preview{background:var(--cad-surface-subtle);border:1px solid var(--cad-line);border-radius:var(--cad-radius-md);object-fit:contain;width:100%;height:auto;max-height:260px;display:block}.download-panel__actions{flex-wrap:wrap;gap:8px;display:flex}.download-panel__actions:empty{display:none}.download-panel__publish{background:var(--cad-accent-soft);border:1px solid var(--cad-accent-border);border-radius:var(--cad-radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:12px;display:flex}.download-panel__publish span{font-weight:700}.download-panel__details{color:var(--cad-text-2);font-size:.8125rem}.download-panel__details summary{cursor:pointer;font-weight:700}.download-panel__details code{overflow-wrap:anywhere}@media (width<=520px){.download-panel__row{flex-direction:column;align-items:stretch}}.library-reuse{z-index:20;border:1px solid var(--cad-line-strong);background:var(--cad-surface-raised);width:min(440px,100vw - 2rem);box-shadow:var(--cad-shadow);color:var(--cad-ink);border-radius:.8rem;grid-template-columns:minmax(0,1fr);align-content:start;gap:.75rem;padding:1rem;display:grid;position:absolute;top:4.8rem;bottom:1rem;right:1rem;overflow:auto}.library-reuse>*{min-width:0}.library-reuse__head{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:.5rem;display:flex}.library-reuse h2,.library-reuse h3,.library-reuse h4{margin:.2rem 0}.library-reuse p{overflow-wrap:anywhere;margin:.2rem 0}.library-reuse ul{overflow-wrap:anywhere;margin:.3rem 0;padding-left:1.2rem}.library-reuse li{margin:.4rem 0}.library-reuse button{white-space:normal;text-align:left;border:1px solid var(--cad-ink);background:var(--cad-surface-raised);max-width:100%;color:var(--cad-text-2);cursor:pointer;border-radius:.45rem;margin:.2rem;padding:.5rem .65rem}.library-reuse button:disabled{opacity:.5;cursor:not-allowed}.library-reuse label{gap:.3rem;display:grid}.library-reuse input{border:1px solid var(--cad-control-border);border-radius:.4rem;width:100%;min-width:0;padding:.55rem}.library-reuse__pending{border:1px solid var(--cad-warning-border);background:var(--cad-warning-bg);border-radius:.5rem;padding:.65rem}.library-reuse__detail,.library-reuse__references{border-top:1px solid var(--cad-line-strong);padding-top:.6rem}@media (width<=640px){.library-reuse{overscroll-behavior:contain;border-radius:0;width:100vw;height:100dvh;padding:1rem;position:fixed;inset:0}}.private-document-workspace .library-reuse{box-sizing:border-box}.private-document-workspace{background:var(--cad-ink);height:100%;min-height:0;display:block;position:relative;overflow:hidden}.private-document-workspace__status{background:var(--cad-surface-raised);border:1px solid var(--cad-line-strong);border-radius:var(--cad-radius-lg);box-shadow:var(--cad-shadow);z-index:5;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 16px;width:max-content;max-width:min(720px,100vw - 32px);padding:14px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.private-document-workspace__status[hidden]{display:none}.private-document-workspace__back{border-right:1px solid var(--cad-line);color:var(--cad-text-2);align-items:center;gap:7px;min-height:34px;padding-right:16px;font-size:.75rem;font-weight:750;text-decoration:none;display:flex}.private-document-workspace__back:hover{color:var(--cad-accent)}.private-document-workspace__status-copy{min-width:0}.private-document-workspace__status-copy h2,.private-document-workspace__status-copy p{margin:0}.private-document-workspace__status-copy h2{font-size:.88rem}.private-document-workspace__status-copy p{color:var(--cad-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.private-document-workspace__status>button,.private-document-workspace__status>[role=group]{justify-self:end}.private-document-workspace__status button{background:var(--cad-accent);border-radius:var(--cad-radius-sm);color:var(--cad-on-accent);cursor:pointer;font:inherit;border:0;min-height:34px;padding:7px 12px;font-size:.74rem;font-weight:750}.private-document-workspace__status button:disabled{cursor:not-allowed;opacity:.52}.private-document-workspace__status>[role=group]{gap:7px;display:flex}.private-document-workspace__editor{background:var(--cad-ink);border:0;width:100%;height:100%;min-height:0;display:block;position:absolute;inset:0}.private-document-workspace__editor[hidden]{display:none}.private-document-workspace__fork-provenance{background:var(--cad-surface);border:1px solid var(--cad-line-strong);border-radius:var(--cad-radius-md);box-shadow:var(--cad-shadow);color:var(--cad-ink);z-index:3;max-width:min(360px,100vw - 24px);padding:8px 10px;position:absolute;top:12px;left:12px}.private-document-workspace__fork-provenance summary{cursor:pointer;font-weight:700}.private-document-workspace__fork-provenance p{overflow-wrap:anywhere;margin:7px 0 0;font-size:.78rem}.private-document-workspace__export-dialog{background:var(--cad-surface);border:1px solid var(--cad-line-strong);border-radius:var(--cad-radius-lg);box-shadow:var(--cad-shadow);box-sizing:border-box;color:var(--cad-ink);max-width:520px;max-height:calc(100dvh - 24px);padding:var(--cad-space-4);width:min(520px,100vw - 24px);margin:auto;overflow:auto}.private-document-workspace__export-dialog--own-buttons{padding:0}.private-document-workspace__export-dialog--studio{border:0;border-radius:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;overflow:hidden}.private-document-workspace__export-dialog--studio[open]{display:block}.private-document-workspace__export-dialog--download{width:min(560px,100vw - 24px);max-width:560px}.private-document-workspace__export-dialog::backdrop{background:var(--cad-overlay)}.private-document-workspace__export-dialog>button{margin:0 0 12px}.private-document-workspace__export-dialog:not(.private-document-workspace__export-dialog--own-buttons) button{background:var(--cad-accent);border:1px solid var(--cad-accent);border-radius:var(--cad-radius-sm);color:var(--cad-on-accent);cursor:pointer;font:inherit;min-height:34px;padding:7px 12px;font-size:.74rem;font-weight:750}.private-document-workspace__export-dialog:not(.private-document-workspace__export-dialog--own-buttons) button:hover{background:var(--cad-accent-hover);border-color:var(--cad-accent-hover)}.private-document-workspace__export-dialog:not(.private-document-workspace__export-dialog--own-buttons) button:disabled{cursor:not-allowed;opacity:.52}.private-document-workspace__export-dialog:not(.private-document-workspace__export-dialog--own-buttons) button:focus-visible{outline:3px solid var(--cad-accent-border);outline-offset:2px}@media (width<=760px){.private-document-workspace__status{grid-template-columns:auto minmax(0,1fr)}.private-document-workspace__back span{display:none}.private-document-workspace__status>button,.private-document-workspace__status>[role=group]{grid-column:1/-1;justify-self:stretch}.private-document-workspace__status>[role=group]{flex-wrap:wrap}}
