mirror of
https://github.com/aykhans/AzSuicideDataVisualization.git
synced 2025-04-21 18:23:35 +00:00
1 line
53 KiB
JavaScript
1 line
53 KiB
JavaScript
(self.webpackChunk_jupyter_widgets_jupyterlab_manager=self.webpackChunk_jupyter_widgets_jupyterlab_manager||[]).push([[523,1],{8523:(e,n,t)=>{"use strict";t.r(n),t.d(n,{WidgetManager:()=>x,WidgetRenderer:()=>u,default:()=>V,output:()=>i,registerWidgetManager:()=>L});var i={};t.r(i),t.d(i,{JupyterPhosphorPanelWidget:()=>M,OUTPUT_WIDGET_VERSION:()=>I,OutputModel:()=>C,OutputView:()=>O});var r=t(8111),o=t(2503),a=t(7185),s=t(8014),d=t(4034),l=t(9850),g=t(9129),p=t(8562),c=t(1797),h=t(3706);class u extends h.Panel{constructor(e,n){super(),this._manager=new c.PromiseDelegate,this._rerenderMimeModel=null,this.mimeType=e.mimeType,n&&(this.manager=n)}set manager(e){e.restored.connect(this._rerender,this),this._manager.resolve(e)}async renderModel(e){const n=e.data[this.mimeType];this.node.textContent="Loading widget...",this.addClass("jupyter-widgets");const t=await this._manager.promise;if(""===n.model_id)return this.hide(),Promise.resolve();let i,r;try{i=await t.get_model(n.model_id)}catch(n){return t.restoredStatus?(this.node.textContent="Error displaying widget: model not found",this.addClass("jupyter-widgets"),void console.error(n)):void(this._rerenderMimeModel=e)}this._rerenderMimeModel=null;try{r=await t.display_model(void 0,i,void 0)}catch(e){return this.node.textContent="Error displaying widget",this.addClass("jupyter-widgets"),void console.error(e)}this.node.textContent="",this.addWidget(r),r.disposed.connect((()=>{this.hide(),n.model_id=""}))}get isDisposed(){return null===this._manager}dispose(){this.isDisposed||(super.dispose(),this._manager=null)}_rerender(){this._rerenderMimeModel&&(this.node.textContent="",this.removeClass("jupyter-widgets"),this.renderModel(this._rerenderMimeModel))}}var w=t(5025),b=t(6168),v=t(7504);class m{constructor(){this._cache=Object.create(null)}set(e,n,t){if(e in this._cache||(this._cache[e]=Object.create(null)),n in this._cache[e])throw`Version ${n} of key ${e} already registered.`;this._cache[e][n]=t}get(e,n){if(e in this._cache){let t=this._cache[e];return t[(0,v.maxSatisfying)(Object.keys(t),n)]}}}const j="application/vnd.jupyter.widget-view+json",f="application/vnd.jupyter.widget-state+json";class y extends h.Widget{constructor(e){super(),this._view=null,this._view=e,e.on("remove",(()=>{this.dispose()})),this.addClass("jp-BackboneViewWrapper"),this.node.appendChild(e.el)}onAfterAttach(e){this._view.trigger("displayed")}dispose(){this._view=null,super.dispose()}}class x extends w.ManagerBase{constructor(e,n,t){var i,r;super(),this._registry=new m,this._restored=new b.Signal(this),this._restoredStatus=!1,this._initialRestoredStatus=!1,this._modelsSync=new Map,this._onUnhandledIOPubMessage=new b.Signal(this),this._context=e,this._rendermime=n,this._handleCommOpen=async(e,n)=>{let t=new w.shims.services.Comm(e);await this.handle_comm_open(t,n)},e.sessionContext.kernelChanged.connect(((e,n)=>{this._handleKernelChanged(n)})),e.sessionContext.statusChanged.connect(((e,n)=>{this._handleKernelStatusChange(n)})),e.sessionContext.connectionStatusChanged.connect(((e,n)=>{this._handleKernelConnectionStatusChange(n)})),(null===(i=e.sessionContext.session)||void 0===i?void 0:i.kernel)&&this._handleKernelChanged({name:"kernel",oldValue:null,newValue:null===(r=e.sessionContext.session)||void 0===r?void 0:r.kernel}),this.restoreWidgets(this._context.model),this._settings=t,e.saveState.connect(((e,n)=>{"started"===n&&t.saveState&&this._saveState()}))}_saveState(){const e=this.get_state_sync({drop_defaults:!0});this._context.model.metadata.set("widgets",{"application/vnd.jupyter.widget-state+json":e})}callbacks(e){return{iopub:{output:e=>{this._onUnhandledIOPubMessage.emit(e)}}}}_handleKernelChanged({oldValue:e,newValue:n}){e&&e.removeCommTarget(this.comm_target_name,this._handleCommOpen),n&&n.registerCommTarget(this.comm_target_name,this._handleCommOpen)}_handleKernelConnectionStatusChange(e){"connected"===e&&this._initialRestoredStatus&&this.restoreWidgets(this._context.model,{loadKernel:!0,loadNotebook:!1})}_handleKernelStatusChange(e){"restarting"===e&&this.disconnect()}async restoreWidgets(e,{loadKernel:n,loadNotebook:t}={loadKernel:!0,loadNotebook:!0}){n&&await this._loadFromKernel(),t&&await this._loadFromNotebook(e),this._restoredStatus=!0,this._initialRestoredStatus=!0,this._restored.emit()}disconnect(){super.disconnect(),this._restoredStatus=!1}async _loadFromKernel(){var e;if(this.context.sessionContext&&(await this.context.sessionContext.ready,!1!==(null===(e=this.context.sessionContext.session)||void 0===e?void 0:e.kernel.handleComms)))return super._loadFromKernel()}async _loadFromNotebook(e){const n=e.metadata.get("widgets");if(n&&n[f]){let e=n[f];e=this.filterExistingModelState(e),await this.set_state(e)}}async display_view(e,n,t){return n.pWidget||new y(n)}async _create_comm(e,n,t,i,r){var o;let a=null===(o=this._context.sessionContext.session)||void 0===o?void 0:o.kernel;if(!a)throw new Error("No current kernel");let s=a.createComm(e,n);return(t||i)&&s.open(t,i,r),new w.shims.services.Comm(s)}async _get_comm_info(){var e;let n=null===(e=this._context.sessionContext.session)||void 0===e?void 0:e.kernel;if(!n)throw new Error("No current kernel");const t=await n.requestCommInfo({target_name:this.comm_target_name});return"ok"===t.content.status?t.content.comms:{}}get isDisposed(){return null===this._context}dispose(){this.isDisposed||(this._commRegistration&&this._commRegistration.dispose(),this._context=null)}async resolveUrl(e){const n=await this.context.urlResolver.resolveUrl(e);return this.context.urlResolver.getDownloadUrl(n)}async loadClass(e,n,t){"@jupyter-widgets/base"!==n&&"@jupyter-widgets/controls"!==n||!(0,v.valid)(t)||(t=`^${t}`);const i=this._registry.get(n,t);if(!i)throw new Error(`Module ${n}, semver range ${t} is not registered as a widget module`);let r;r="function"==typeof i?await i():await i;const o=r[e];if(!o)throw new Error(`Class ${e} not found in module ${n}`);return o}get context(){return this._context}get rendermime(){return this._rendermime}get restored(){return this._restored}get restoredStatus(){return this._restoredStatus}get onUnhandledIOPubMessage(){return this._onUnhandledIOPubMessage}register(e){this._registry.set(e.name,e.version,e.exports)}async get_model(e){const n=super.get_model(e);if(void 0===n)throw new Error("widget model not found");return n}register_model(e,n){super.register_model(e,n),n.then((n=>{this._modelsSync.set(e,n),n.once("comm:close",(()=>{this._modelsSync.delete(e)}))})),this.setDirty()}async clear_state(){await super.clear_state(),this._modelsSync=new Map,this.setDirty()}get_state_sync(e={}){const n=[];for(let e of this._modelsSync.values())e.comm_live&&n.push(e);return(0,w.serialize_state)(n,e)}setDirty(){this._settings.saveState&&(this._context.model.dirty=!0)}}var k=t(7272),_=t(6195),T=t(1524),S=t.n(T);const I=k.OUTPUT_WIDGET_VERSION;class C extends k.OutputModel{defaults(){return Object.assign(Object.assign({},super.defaults()),{msg_id:"",outputs:[]})}initialize(e,n){super.initialize(e,n),this._outputs=new _.OutputAreaModel({trusted:!0}),this._msgHook=e=>(this.add(e),!1),this.widget_manager.context.sessionContext.kernelChanged.connect(((e,n)=>{this._handleKernelChanged(n)})),this.listenTo(this,"change:msg_id",this.reset_msg_id),this.listenTo(this,"change:outputs",this.setOutputs),this.setOutputs()}_handleKernelChanged({oldValue:e}){const n=this.get("msg_id");n&&e&&(e.removeMessageHook(n,this._msgHook),this.set("msg_id",null))}reset_msg_id(){const e=this.widget_manager.context.sessionContext.session.kernel,n=this.get("msg_id"),t=this.previous("msg_id");t&&e&&e.removeMessageHook(t,this._msgHook),n&&e&&e.registerMessageHook(n,this._msgHook)}add(e){let n=e.header.msg_type;switch(n){case"execute_result":case"display_data":case"stream":case"error":let t=e.content;t.output_type=n,this._outputs.add(t);break;case"clear_output":this.clear_output(e.content.wait)}this.set("outputs",this._outputs.toJSON(),{newMessage:!0}),this.save_changes()}clear_output(e=!1){this._outputs.clear(e)}get outputs(){return this._outputs}setOutputs(e,n,t){t&&t.newMessage||(this.clear_output(),this._outputs.fromJSON(JSON.parse(JSON.stringify(this.get("outputs")))))}}class M extends h.Panel{constructor(e){let n=e.view;delete e.view,super(e),this._view=n}processMessage(e){super.processMessage(e),this._view.processPhosphorMessage(e)}dispose(){this.isDisposed||(super.dispose(),this._view&&this._view.remove(),this._view=null)}}class O extends k.OutputView{_createElement(e){return this.pWidget=new M({view:this}),this.pWidget.node}_setElement(e){if(this.el||e!==this.pWidget.node)throw new Error("Cannot reset the DOM element.");this.el=this.pWidget.node,this.$el=S()(this.pWidget.node)}render(){super.render(),this._outputView=new _.OutputArea({rendermime:this.model.widget_manager.rendermime,contentFactory:_.OutputArea.defaultContentFactory,model:this.model.outputs}),this.pWidget.insertWidget(0,this._outputView),this.pWidget.addClass("jupyter-widgets"),this.pWidget.addClass("widget-output"),this.update()}remove(){return this._outputView.dispose(),super.remove()}}var z=t(8001),B=(t(5e3),t(7614),t(2695));const E=[],R={saveState:!1};function*N(e){for(let n of e.widgets)if("code"===n.model.type)for(let e of n.outputArea.widgets)for(let n of(0,l.toArray)(e.children()))n instanceof u&&(yield n)}function*A(e,n){let t=(0,l.filter)(e.shell.widgets(),(e=>e.id.startsWith("LinkedOutputView-")&&e.path===n));for(let e of(0,l.toArray)(t))for(let n of(0,l.toArray)(e.children()))for(let e of(0,l.toArray)(n.children()))e instanceof u&&(yield e)}function*W(...e){for(let n of e)yield*n}function L(e,n,t){let i=U.widgetManagerProperty.get(e);i||(i=new x(e,n,R),E.forEach((e=>i.register(e))),U.widgetManagerProperty.set(e,i));for(let e of t)e.manager=i;return n.removeMimeType(j),n.addFactory({safe:!1,mimeTypes:[j],createRenderer:e=>new u(e,i)},0),new g.DisposableDelegate((()=>{n&&n.removeMimeType(j),i.dispose()}))}const D={id:"@jupyter-widgets/jupyterlab-manager:plugin",requires:[s.IRenderMimeRegistry,r.ISettingRegistry],optional:[o.INotebookTracker,a.IMainMenu,d.ILoggerRegistry],provides:w.IJupyterWidgetRegistry,activate:function(e,n,i,r,o,a){const{commands:s}=e,d=e=>{if(!a)return;const n=U.widgetManagerProperty.get(e.context);n&&n.onUnhandledIOPubMessage.connect(((n,t)=>{const i=a.getLogger(e.context.path);let r="warning";(B.KernelMessage.isErrorMsg(t)||B.KernelMessage.isStreamMsg(t)&&"stderr"===t.content.name)&&(r="error");const o=Object.assign(Object.assign({},t.content),{output_type:t.header.msg_type});i.rendermime=e.content.rendermime,i.log({type:"output",data:o,level:r})}))};return i.load(D.id).then((e=>{e.changed.connect(P),P(e)})).catch((e=>{console.error(e.message)})),n.addFactory({safe:!1,mimeTypes:[j],createRenderer:e=>new u(e)},0),r&&(r.forEach((n=>{L(n.context,n.content.rendermime,W(N(n.content),A(e,n.context.path))),d(n)})),r.widgetAdded.connect(((n,t)=>{L(t.context,t.content.rendermime,W(N(t.content),A(e,t.context.path))),d(t)}))),s.addCommand("@jupyter-widgets/jupyterlab-manager:saveWidgetState",{label:"Save Widget State Automatically",execute:e=>i.set(D.id,"saveState",!R.saveState).catch((e=>{console.error(`Failed to set ${D.id}: ${e.message}`)})),isToggled:()=>R.saveState}),o&&o.settingsMenu.addGroup([{command:"@jupyter-widgets/jupyterlab-manager:saveWidgetState"}]),E.push({name:"@jupyter-widgets/base",version:w.JUPYTER_WIDGETS_VERSION,exports:{WidgetModel:w.WidgetModel,WidgetView:w.WidgetView,DOMWidgetView:w.DOMWidgetView,DOMWidgetModel:w.DOMWidgetModel,LayoutModel:w.LayoutModel,LayoutView:w.LayoutView,StyleModel:w.StyleModel,StyleView:w.StyleView}}),E.push({name:"@jupyter-widgets/controls",version:z.N,exports:()=>new Promise(((e,n)=>{t.e(863).then((n=>{e(t(5357))}).bind(null,t)).catch((e=>{n(e)}))}))}),E.push({name:"@jupyter-widgets/output",version:I,exports:{OutputModel:C,OutputView:O}}),{registerWidget(e){E.push(e)}}},autoStart:!0},H=D;function P(e){R.saveState=e.get("saveState").composite}var U;!function(e){e.widgetManagerProperty=new p.AttachedProperty({name:"widgetManager",create:()=>{}})}(U||(U={}));const V=H},3422:(e,n,t)=>{(n=t(3476)(!1)).push([e.id,'/* Copyright (c) Jupyter Development Team.\n * Distributed under the terms of the Modified BSD License.\n */\n\n .jupyter-widgets-disconnected::before {\n content: "\\f127"; /* chain-broken */\n display: inline-block;\n font: normal normal normal 14px/1 FontAwesome;\n font-size: inherit;\n text-rendering: auto;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n color: #d9534f;\n padding: 3px;\n align-self: flex-start;\n}\n',""]),e.exports=n},161:(e,n,t)=>{(n=t(3476)(!1)).push([e.id,"/* This file has code derived from PhosphorJS CSS files, as noted below. The license for this PhosphorJS code is:\n\nCopyright (c) 2014-2017, PhosphorJS Contributors\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n* Redistributions of source code must retain the above copyright notice, this\n list of conditions and the following disclaimer.\n\n* Redistributions in binary form must reproduce the above copyright notice,\n this list of conditions and the following disclaimer in the documentation\n and/or other materials provided with the distribution.\n\n* Neither the name of the copyright holder nor the names of its\n contributors may be used to endorse or promote products derived from\n this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\nOR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n*/\n\n/*\n * The following section is derived from https://github.com/phosphorjs/phosphor/blob/23b9d075ebc5b73ab148b6ebfc20af97f85714c4/packages/widgets/style/tabbar.css \n * We've scoped the rules so that they are consistent with exactly our code.\n */\n\n.jupyter-widgets.widget-tab > .p-TabBar {\n display: flex;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n\n\n.jupyter-widgets.widget-tab > .p-TabBar[data-orientation='horizontal'] {\n flex-direction: row;\n}\n\n\n.jupyter-widgets.widget-tab > .p-TabBar[data-orientation='vertical'] {\n flex-direction: column;\n}\n\n\n.jupyter-widgets.widget-tab > .p-TabBar > .p-TabBar-content {\n margin: 0;\n padding: 0;\n display: flex;\n flex: 1 1 auto;\n list-style-type: none;\n}\n\n\n.jupyter-widgets.widget-tab > .p-TabBar[data-orientation='horizontal'] > .p-TabBar-content {\n flex-direction: row;\n}\n\n\n.jupyter-widgets.widget-tab > .p-TabBar[data-orientation='vertical'] > .p-TabBar-content {\n flex-direction: column;\n}\n\n\n.jupyter-widgets.widget-tab > .p-TabBar .p-TabBar-tab {\n display: flex;\n flex-direction: row;\n box-sizing: border-box;\n overflow: hidden;\n}\n\n\n.jupyter-widgets.widget-tab > .p-TabBar .p-TabBar-tabIcon,\n.jupyter-widgets.widget-tab > .p-TabBar .p-TabBar-tabCloseIcon {\n flex: 0 0 auto;\n}\n\n\n.jupyter-widgets.widget-tab > .p-TabBar .p-TabBar-tabLabel {\n flex: 1 1 auto;\n overflow: hidden;\n white-space: nowrap;\n}\n\n\n.jupyter-widgets.widget-tab > .p-TabBar .p-TabBar-tab.p-mod-hidden {\n display: none !important;\n}\n\n\n.jupyter-widgets.widget-tab > .p-TabBar.p-mod-dragging .p-TabBar-tab {\n position: relative;\n}\n\n\n.jupyter-widgets.widget-tab > .p-TabBar.p-mod-dragging[data-orientation='horizontal'] .p-TabBar-tab {\n left: 0;\n transition: left 150ms ease;\n}\n\n\n.jupyter-widgets.widget-tab > .p-TabBar.p-mod-dragging[data-orientation='vertical'] .p-TabBar-tab {\n top: 0;\n transition: top 150ms ease;\n}\n\n\n.jupyter-widgets.widget-tab > .p-TabBar.p-mod-dragging .p-TabBar-tab.p-mod-dragging {\n transition: none;\n}\n\n/* End tabbar.css */\n",""]),e.exports=n},5618:(e,n,t)=>{var i=t(3476),r=t(161);(n=i(!1)).i(r),n.push([e.id,'/* Copyright (c) Jupyter Development Team.\n * Distributed under the terms of the Modified BSD License.\n */\n\n/*\n * We assume that the CSS variables in\n * https://github.com/jupyterlab/jupyterlab/blob/master/src/default-theme/variables.css\n * have been defined.\n */\n\n:root {\n --jp-widgets-color: var(--jp-content-font-color1);\n --jp-widgets-label-color: var(--jp-widgets-color);\n --jp-widgets-readout-color: var(--jp-widgets-color);\n --jp-widgets-font-size: var(--jp-ui-font-size1);\n --jp-widgets-margin: 2px;\n --jp-widgets-inline-height: 28px;\n --jp-widgets-inline-width: 300px;\n --jp-widgets-inline-width-short: calc(var(--jp-widgets-inline-width) / 2 - var(--jp-widgets-margin));\n --jp-widgets-inline-width-tiny: calc(var(--jp-widgets-inline-width-short) / 2 - var(--jp-widgets-margin));\n --jp-widgets-inline-margin: 4px; /* margin between inline elements */\n --jp-widgets-inline-label-width: 80px;\n --jp-widgets-border-width: var(--jp-border-width);\n --jp-widgets-vertical-height: 200px;\n --jp-widgets-horizontal-tab-height: 24px;\n --jp-widgets-horizontal-tab-width: 144px;\n --jp-widgets-horizontal-tab-top-border: 2px;\n --jp-widgets-progress-thickness: 20px;\n --jp-widgets-container-padding: 15px;\n --jp-widgets-input-padding: 4px;\n --jp-widgets-radio-item-height-adjustment: 8px;\n --jp-widgets-radio-item-height: calc(var(--jp-widgets-inline-height) - var(--jp-widgets-radio-item-height-adjustment));\n --jp-widgets-slider-track-thickness: 4px;\n --jp-widgets-slider-border-width: var(--jp-widgets-border-width);\n --jp-widgets-slider-handle-size: 16px;\n --jp-widgets-slider-handle-border-color: var(--jp-border-color1);\n --jp-widgets-slider-handle-background-color: var(--jp-layout-color1);\n --jp-widgets-slider-active-handle-color: var(--jp-brand-color1);\n --jp-widgets-menu-item-height: 24px;\n --jp-widgets-dropdown-arrow: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAxOCAxOCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTggMTg7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDpub25lO30KPC9zdHlsZT4KPHBhdGggZD0iTTUuMiw1LjlMOSw5LjdsMy44LTMuOGwxLjIsMS4ybC00LjksNWwtNC45LTVMNS4yLDUuOXoiLz4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTAtMC42aDE4djE4SDBWLTAuNnoiLz4KPC9zdmc+Cg");\n --jp-widgets-input-color: var(--jp-ui-font-color1);\n --jp-widgets-input-background-color: var(--jp-layout-color1);\n --jp-widgets-input-border-color: var(--jp-border-color1);\n --jp-widgets-input-focus-border-color: var(--jp-brand-color2);\n --jp-widgets-input-border-width: var(--jp-widgets-border-width);\n --jp-widgets-disabled-opacity: 0.6;\n\n /* From Material Design Lite */\n --md-shadow-key-umbra-opacity: 0.2;\n --md-shadow-key-penumbra-opacity: 0.14;\n --md-shadow-ambient-shadow-opacity: 0.12;\n}\n\n.jupyter-widgets {\n margin: var(--jp-widgets-margin);\n box-sizing: border-box;\n color: var(--jp-widgets-color);\n overflow: visible;\n}\n\n.jupyter-widgets.jupyter-widgets-disconnected::before {\n line-height: var(--jp-widgets-inline-height);\n height: var(--jp-widgets-inline-height);\n}\n\n.jp-Output-result > .jupyter-widgets {\n margin-left: 0;\n margin-right: 0;\n}\n\n/* vbox and hbox */\n\n.widget-inline-hbox {\n /* Horizontal widgets */\n box-sizing: border-box;\n display: flex;\n flex-direction: row;\n align-items: baseline;\n}\n\n.widget-inline-vbox {\n /* Vertical Widgets */\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n align-items: center;\n}\n\n.widget-box {\n box-sizing: border-box;\n display: flex;\n margin: 0;\n overflow: auto;\n}\n\n.widget-gridbox {\n box-sizing: border-box;\n display: grid;\n margin: 0;\n overflow: auto;\n}\n\n.widget-hbox {\n flex-direction: row;\n}\n\n.widget-vbox {\n flex-direction: column;\n}\n\n/* General Button Styling */\n\n.jupyter-button {\n padding-left: 10px;\n padding-right: 10px;\n padding-top: 0px;\n padding-bottom: 0px;\n display: inline-block;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: center;\n font-size: var(--jp-widgets-font-size);\n cursor: pointer;\n\n height: var(--jp-widgets-inline-height);\n border: 0px solid;\n line-height: var(--jp-widgets-inline-height);\n box-shadow: none;\n\n color: var(--jp-ui-font-color1);\n background-color: var(--jp-layout-color2);\n border-color: var(--jp-border-color2);\n border: none;\n user-select: none;\n}\n\n.jupyter-button i.fa {\n margin-right: var(--jp-widgets-inline-margin);\n pointer-events: none;\n}\n\n.jupyter-button:empty:before {\n content: "\\200b"; /* zero-width space */\n}\n\n.jupyter-widgets.jupyter-button:disabled {\n opacity: var(--jp-widgets-disabled-opacity);\n}\n\n.jupyter-button i.fa.center {\n margin-right: 0;\n}\n\n.jupyter-button:hover:enabled, .jupyter-button:focus:enabled {\n /* MD Lite 2dp shadow */\n box-shadow: 0 2px 2px 0 rgba(0, 0, 0, var(--md-shadow-key-penumbra-opacity)),\n 0 3px 1px -2px rgba(0, 0, 0, var(--md-shadow-key-umbra-opacity)),\n 0 1px 5px 0 rgba(0, 0, 0, var(--md-shadow-ambient-shadow-opacity));\n}\n\n.jupyter-button:active, .jupyter-button.mod-active {\n /* MD Lite 4dp shadow */\n box-shadow: 0 4px 5px 0 rgba(0, 0, 0, var(--md-shadow-key-penumbra-opacity)),\n 0 1px 10px 0 rgba(0, 0, 0, var(--md-shadow-ambient-shadow-opacity)),\n 0 2px 4px -1px rgba(0, 0, 0, var(--md-shadow-key-umbra-opacity));\n color: var(--jp-ui-font-color1);\n background-color: var(--jp-layout-color3);\n}\n\n.jupyter-button:focus:enabled {\n outline: 1px solid var(--jp-widgets-input-focus-border-color);\n}\n\n/* Button "Primary" Styling */\n\n.jupyter-button.mod-primary {\n color: var(--jp-ui-inverse-font-color1, var(--jp-inverse-ui-font-color1));\n background-color: var(--jp-brand-color1);\n}\n\n.jupyter-button.mod-primary.mod-active {\n color: var(--jp-ui-inverse-font-color0, var(--jp-inverse-ui-font-color0));\n background-color: var(--jp-brand-color0);\n}\n\n.jupyter-button.mod-primary:active {\n color: var(--jp-ui-inverse-font-color0, var(--jp-inverse-ui-font-color0));\n background-color: var(--jp-brand-color0);\n}\n\n/* Button "Success" Styling */\n\n.jupyter-button.mod-success {\n color: var(--jp-ui-inverse-font-color1, var(--jp-inverse-ui-font-color1));\n background-color: var(--jp-success-color1);\n}\n\n.jupyter-button.mod-success.mod-active {\n color: var(--jp-ui-inverse-font-color0, var(--jp-inverse-ui-font-color0));\n background-color: var(--jp-success-color0);\n}\n\n.jupyter-button.mod-success:active {\n color: var(--jp-ui-inverse-font-color0, var(--jp-inverse-ui-font-color0));\n background-color: var(--jp-success-color0);\n}\n\n /* Button "Info" Styling */\n\n.jupyter-button.mod-info {\n color: var(--jp-ui-inverse-font-color1, var(--jp-inverse-ui-font-color1));\n background-color: var(--jp-info-color1);\n}\n\n.jupyter-button.mod-info.mod-active {\n color: var(--jp-ui-inverse-font-color0, var(--jp-inverse-ui-font-color0));\n background-color: var(--jp-info-color0);\n}\n\n.jupyter-button.mod-info:active {\n color: var(--jp-ui-inverse-font-color0, var(--jp-inverse-ui-font-color0));\n background-color: var(--jp-info-color0);\n}\n\n/* Button "Warning" Styling */\n\n.jupyter-button.mod-warning {\n color: var(--jp-ui-inverse-font-color1, var(--jp-inverse-ui-font-color1));\n background-color: var(--jp-warn-color1);\n}\n\n.jupyter-button.mod-warning.mod-active {\n color: var(--jp-ui-inverse-font-color0, var(--jp-inverse-ui-font-color0));\n background-color: var(--jp-warn-color0);\n}\n\n.jupyter-button.mod-warning:active {\n color: var(--jp-ui-inverse-font-color0, var(--jp-inverse-ui-font-color0));\n background-color: var(--jp-warn-color0);\n}\n\n/* Button "Danger" Styling */\n\n.jupyter-button.mod-danger {\n color: var(--jp-ui-inverse-font-color1, var(--jp-inverse-ui-font-color1));\n background-color: var(--jp-error-color1);\n}\n\n.jupyter-button.mod-danger.mod-active {\n color: var(--jp-ui-inverse-font-color0, var(--jp-inverse-ui-font-color0));\n background-color: var(--jp-error-color0);\n}\n\n.jupyter-button.mod-danger:active {\n color: var(--jp-ui-inverse-font-color0, var(--jp-inverse-ui-font-color0));\n background-color: var(--jp-error-color0);\n}\n\n/* Widget Button, Widget Toggle Button, Widget Upload */\n\n.widget-button, .widget-toggle-button, .widget-upload {\n width: var(--jp-widgets-inline-width-short);\n}\n\n/* Widget Label Styling */\n\n/* Override Bootstrap label css */\n.jupyter-widgets label {\n margin-bottom: initial;\n}\n\n.widget-label-basic {\n /* Basic Label */\n color: var(--jp-widgets-label-color);\n font-size: var(--jp-widgets-font-size);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n line-height: var(--jp-widgets-inline-height);\n}\n\n.widget-label {\n /* Label */\n color: var(--jp-widgets-label-color);\n font-size: var(--jp-widgets-font-size);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n line-height: var(--jp-widgets-inline-height);\n}\n\n.widget-inline-hbox .widget-label {\n /* Horizontal Widget Label */\n color: var(--jp-widgets-label-color);\n text-align: right;\n margin-right: calc( var(--jp-widgets-inline-margin) * 2 );\n width: var(--jp-widgets-inline-label-width);\n flex-shrink: 0;\n}\n\n.widget-inline-vbox .widget-label {\n /* Vertical Widget Label */\n color: var(--jp-widgets-label-color);\n text-align: center;\n line-height: var(--jp-widgets-inline-height);\n}\n\n/* Widget Readout Styling */\n\n.widget-readout {\n color: var(--jp-widgets-readout-color);\n font-size: var(--jp-widgets-font-size);\n height: var(--jp-widgets-inline-height);\n line-height: var(--jp-widgets-inline-height);\n overflow: hidden;\n white-space: nowrap;\n text-align: center;\n}\n\n.widget-readout.overflow {\n /* Overflowing Readout */\n\n /* From Material Design Lite\n shadow-key-umbra-opacity: 0.2;\n shadow-key-penumbra-opacity: 0.14;\n shadow-ambient-shadow-opacity: 0.12;\n */\n -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2),\n 0 3px 1px -2px rgba(0, 0, 0, 0.14),\n 0 1px 5px 0 rgba(0, 0, 0, 0.12);\n\n -moz-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2),\n 0 3px 1px -2px rgba(0, 0, 0, 0.14),\n 0 1px 5px 0 rgba(0, 0, 0, 0.12);\n\n box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.2),\n 0 3px 1px -2px rgba(0, 0, 0, 0.14),\n 0 1px 5px 0 rgba(0, 0, 0, 0.12);\n}\n\n.widget-inline-hbox .widget-readout {\n /* Horizontal Readout */\n text-align: center;\n max-width: var(--jp-widgets-inline-width-short);\n min-width: var(--jp-widgets-inline-width-tiny);\n margin-left: var(--jp-widgets-inline-margin);\n}\n\n.widget-inline-vbox .widget-readout {\n /* Vertical Readout */\n margin-top: var(--jp-widgets-inline-margin);\n /* as wide as the widget */\n width: inherit;\n}\n\n/* Widget Checkbox Styling */\n\n.widget-checkbox {\n width: var(--jp-widgets-inline-width);\n height: var(--jp-widgets-inline-height);\n line-height: var(--jp-widgets-inline-height);\n}\n\n.widget-checkbox input[type="checkbox"] {\n margin: 0px calc( var(--jp-widgets-inline-margin) * 2 ) 0px 0px;\n line-height: var(--jp-widgets-inline-height);\n font-size: large;\n flex-grow: 1;\n flex-shrink: 0;\n align-self: center;\n}\n\n/* Widget Valid Styling */\n\n.widget-valid {\n height: var(--jp-widgets-inline-height);\n line-height: var(--jp-widgets-inline-height);\n width: var(--jp-widgets-inline-width-short);\n font-size: var(--jp-widgets-font-size);\n}\n\n.widget-valid i:before {\n line-height: var(--jp-widgets-inline-height);\n margin-right: var(--jp-widgets-inline-margin);\n margin-left: var(--jp-widgets-inline-margin);\n}\n\n.widget-valid.mod-valid i:before {\n color: green;\n}\n\n.widget-valid.mod-invalid i:before {\n color: red;\n}\n\n.widget-valid.mod-valid .widget-valid-readout {\n display: none;\n}\n\n/* Widget Text and TextArea Stying */\n\n.widget-textarea, .widget-text {\n width: var(--jp-widgets-inline-width);\n}\n\n.widget-text input[type="text"], .widget-text input[type="number"], .widget-text input[type="password"] {\n height: var(--jp-widgets-inline-height);\n}\n\n.widget-text input[type="text"]:disabled, .widget-text input[type="number"]:disabled, .widget-text input[type="password"]:disabled, .widget-textarea textarea:disabled {\n opacity: var(--jp-widgets-disabled-opacity);\n}\n\n.widget-text input[type="text"], .widget-text input[type="number"], .widget-text input[type="password"], .widget-textarea textarea {\n box-sizing: border-box;\n border: var(--jp-widgets-input-border-width) solid var(--jp-widgets-input-border-color);\n background-color: var(--jp-widgets-input-background-color);\n color: var(--jp-widgets-input-color);\n font-size: var(--jp-widgets-font-size);\n flex-grow: 1;\n min-width: 0; /* This makes it possible for the flexbox to shrink this input */\n flex-shrink: 1;\n outline: none !important;\n}\n \n.widget-text input[type="text"], .widget-text input[type="password"], .widget-textarea textarea {\n padding: var(--jp-widgets-input-padding) calc( var(--jp-widgets-input-padding) * 2);\n}\n\n.widget-text input[type="number"] {\n padding: var(--jp-widgets-input-padding) 0 var(--jp-widgets-input-padding) calc(var(--jp-widgets-input-padding) * 2);\n}\n\n.widget-textarea textarea {\n height: inherit;\n width: inherit;\n}\n\n.widget-text input:focus, .widget-textarea textarea:focus {\n border-color: var(--jp-widgets-input-focus-border-color);\n}\n\n/* Widget Slider */\n\n.widget-slider .ui-slider {\n /* Slider Track */\n border: var(--jp-widgets-slider-border-width) solid var(--jp-layout-color3);\n background: var(--jp-layout-color3);\n box-sizing: border-box;\n position: relative;\n border-radius: 0px;\n}\n\n.widget-slider .ui-slider .ui-slider-handle {\n /* Slider Handle */\n outline: none !important; /* focused slider handles are colored - see below */\n position: absolute;\n background-color: var(--jp-widgets-slider-handle-background-color);\n border: var(--jp-widgets-slider-border-width) solid var(--jp-widgets-slider-handle-border-color);\n box-sizing: border-box;\n z-index: 1;\n background-image: none; /* Override jquery-ui */\n}\n\n/* Override jquery-ui */\n.widget-slider .ui-slider .ui-slider-handle:hover, .widget-slider .ui-slider .ui-slider-handle:focus {\n background-color: var(--jp-widgets-slider-active-handle-color);\n border: var(--jp-widgets-slider-border-width) solid var(--jp-widgets-slider-active-handle-color);\n}\n\n.widget-slider .ui-slider .ui-slider-handle:active {\n background-color: var(--jp-widgets-slider-active-handle-color);\n border-color: var(--jp-widgets-slider-active-handle-color);\n z-index: 2;\n transform: scale(1.2);\n}\n\n.widget-slider .ui-slider .ui-slider-range {\n /* Interval between the two specified value of a double slider */\n position: absolute;\n background: var(--jp-widgets-slider-active-handle-color);\n z-index: 0;\n}\n\n/* Shapes of Slider Handles */\n\n.widget-hslider .ui-slider .ui-slider-handle {\n width: var(--jp-widgets-slider-handle-size);\n height: var(--jp-widgets-slider-handle-size);\n margin-top: calc((var(--jp-widgets-slider-track-thickness) - var(--jp-widgets-slider-handle-size)) / 2 - var(--jp-widgets-slider-border-width));\n margin-left: calc(var(--jp-widgets-slider-handle-size) / -2 + var(--jp-widgets-slider-border-width));\n border-radius: 50%;\n top: 0;\n}\n\n.widget-vslider .ui-slider .ui-slider-handle {\n width: var(--jp-widgets-slider-handle-size);\n height: var(--jp-widgets-slider-handle-size);\n margin-bottom: calc(var(--jp-widgets-slider-handle-size) / -2 + var(--jp-widgets-slider-border-width));\n margin-left: calc((var(--jp-widgets-slider-track-thickness) - var(--jp-widgets-slider-handle-size)) / 2 - var(--jp-widgets-slider-border-width));\n border-radius: 50%;\n left: 0;\n}\n\n.widget-hslider .ui-slider .ui-slider-range {\n height: calc( var(--jp-widgets-slider-track-thickness) * 2 );\n margin-top: calc((var(--jp-widgets-slider-track-thickness) - var(--jp-widgets-slider-track-thickness) * 2 ) / 2 - var(--jp-widgets-slider-border-width));\n}\n\n.widget-vslider .ui-slider .ui-slider-range {\n width: calc( var(--jp-widgets-slider-track-thickness) * 2 );\n margin-left: calc((var(--jp-widgets-slider-track-thickness) - var(--jp-widgets-slider-track-thickness) * 2 ) / 2 - var(--jp-widgets-slider-border-width));\n}\n\n/* Horizontal Slider */\n\n.widget-hslider {\n width: var(--jp-widgets-inline-width);\n height: var(--jp-widgets-inline-height);\n line-height: var(--jp-widgets-inline-height);\n\n /* Override the align-items baseline. This way, the description and readout\n still seem to align their baseline properly, and we don\'t have to have\n align-self: stretch in the .slider-container. */\n align-items: center;\n}\n\n.widgets-slider .slider-container {\n overflow: visible;\n}\n\n.widget-hslider .slider-container {\n height: var(--jp-widgets-inline-height);\n margin-left: calc(var(--jp-widgets-slider-handle-size) / 2 - 2 * var(--jp-widgets-slider-border-width));\n margin-right: calc(var(--jp-widgets-slider-handle-size) / 2 - 2 * var(--jp-widgets-slider-border-width));\n flex: 1 1 var(--jp-widgets-inline-width-short);\n}\n\n.widget-hslider .ui-slider {\n /* Inner, invisible slide div */\n height: var(--jp-widgets-slider-track-thickness);\n margin-top: calc((var(--jp-widgets-inline-height) - var(--jp-widgets-slider-track-thickness)) / 2);\n width: 100%;\n}\n\n/* Vertical Slider */\n\n.widget-vbox .widget-label {\n height: var(--jp-widgets-inline-height);\n line-height: var(--jp-widgets-inline-height);\n}\n\n.widget-vslider {\n /* Vertical Slider */\n height: var(--jp-widgets-vertical-height);\n width: var(--jp-widgets-inline-width-tiny);\n}\n\n.widget-vslider .slider-container {\n flex: 1 1 var(--jp-widgets-inline-width-short);\n margin-left: auto;\n margin-right: auto;\n margin-bottom: calc(var(--jp-widgets-slider-handle-size) / 2 - 2 * var(--jp-widgets-slider-border-width));\n margin-top: calc(var(--jp-widgets-slider-handle-size) / 2 - 2 * var(--jp-widgets-slider-border-width));\n display: flex;\n flex-direction: column;\n}\n\n.widget-vslider .ui-slider-vertical {\n /* Inner, invisible slide div */\n width: var(--jp-widgets-slider-track-thickness);\n flex-grow: 1;\n margin-left: auto;\n margin-right: auto;\n}\n\n/* Widget Progress Styling */\n\n.progress-bar {\n -webkit-transition: none;\n -moz-transition: none;\n -ms-transition: none;\n -o-transition: none;\n transition: none;\n}\n\n.progress-bar {\n height: var(--jp-widgets-inline-height);\n}\n\n.progress-bar {\n background-color: var(--jp-brand-color1);\n}\n\n.progress-bar-success {\n background-color: var(--jp-success-color1);\n}\n\n.progress-bar-info {\n background-color: var(--jp-info-color1);\n}\n\n.progress-bar-warning {\n background-color: var(--jp-warn-color1);\n}\n\n.progress-bar-danger {\n background-color: var(--jp-error-color1);\n}\n\n.progress {\n background-color: var(--jp-layout-color2);\n border: none;\n box-shadow: none;\n}\n\n/* Horisontal Progress */\n\n.widget-hprogress {\n /* Progress Bar */\n height: var(--jp-widgets-inline-height);\n line-height: var(--jp-widgets-inline-height);\n width: var(--jp-widgets-inline-width);\n align-items: center;\n\n}\n\n.widget-hprogress .progress {\n flex-grow: 1;\n margin-top: var(--jp-widgets-input-padding);\n margin-bottom: var(--jp-widgets-input-padding);\n align-self: stretch;\n /* Override bootstrap style */\n height: initial;\n}\n\n/* Vertical Progress */\n\n.widget-vprogress {\n height: var(--jp-widgets-vertical-height);\n width: var(--jp-widgets-inline-width-tiny);\n}\n\n.widget-vprogress .progress {\n flex-grow: 1;\n width: var(--jp-widgets-progress-thickness);\n margin-left: auto;\n margin-right: auto;\n margin-bottom: 0;\n}\n\n/* Select Widget Styling */\n\n.widget-dropdown {\n height: var(--jp-widgets-inline-height);\n width: var(--jp-widgets-inline-width);\n line-height: var(--jp-widgets-inline-height);\n}\n\n.widget-dropdown > select {\n padding-right: 20px;\n border: var(--jp-widgets-input-border-width) solid var(--jp-widgets-input-border-color);\n border-radius: 0;\n height: inherit;\n flex: 1 1 var(--jp-widgets-inline-width-short);\n min-width: 0; /* This makes it possible for the flexbox to shrink this input */\n box-sizing: border-box;\n outline: none !important;\n box-shadow: none;\n background-color: var(--jp-widgets-input-background-color);\n color: var(--jp-widgets-input-color);\n font-size: var(--jp-widgets-font-size);\n vertical-align: top;\n padding-left: calc( var(--jp-widgets-input-padding) * 2);\n\tappearance: none;\n\t-webkit-appearance: none;\n\t-moz-appearance: none;\n background-repeat: no-repeat;\n\tbackground-size: 20px;\n\tbackground-position: right center;\n background-image: var(--jp-widgets-dropdown-arrow);\n}\n.widget-dropdown > select:focus {\n border-color: var(--jp-widgets-input-focus-border-color);\n}\n\n.widget-dropdown > select:disabled {\n opacity: var(--jp-widgets-disabled-opacity);\n}\n\n/* To disable the dotted border in Firefox around select controls.\n See http://stackoverflow.com/a/18853002 */\n.widget-dropdown > select:-moz-focusring {\n color: transparent;\n text-shadow: 0 0 0 #000;\n}\n\n/* Select and SelectMultiple */\n\n.widget-select {\n width: var(--jp-widgets-inline-width);\n line-height: var(--jp-widgets-inline-height);\n\n /* Because Firefox defines the baseline of a select as the bottom of the\n control, we align the entire control to the top and add padding to the\n select to get an approximate first line baseline alignment. */\n align-items: flex-start;\n}\n\n.widget-select > select {\n border: var(--jp-widgets-input-border-width) solid var(--jp-widgets-input-border-color);\n background-color: var(--jp-widgets-input-background-color);\n color: var(--jp-widgets-input-color);\n font-size: var(--jp-widgets-font-size);\n flex: 1 1 var(--jp-widgets-inline-width-short);\n outline: none !important;\n overflow: auto;\n height: inherit;\n\n /* Because Firefox defines the baseline of a select as the bottom of the\n control, we align the entire control to the top and add padding to the\n select to get an approximate first line baseline alignment. */\n padding-top: 5px;\n}\n\n.widget-select > select:focus {\n border-color: var(--jp-widgets-input-focus-border-color);\n}\n\n.wiget-select > select > option {\n padding-left: var(--jp-widgets-input-padding);\n line-height: var(--jp-widgets-inline-height);\n /* line-height doesn\'t work on some browsers for select options */\n padding-top: calc(var(--jp-widgets-inline-height)-var(--jp-widgets-font-size)/2);\n padding-bottom: calc(var(--jp-widgets-inline-height)-var(--jp-widgets-font-size)/2);\n}\n\n\n\n/* Toggle Buttons Styling */\n\n.widget-toggle-buttons {\n line-height: var(--jp-widgets-inline-height);\n}\n\n.widget-toggle-buttons .widget-toggle-button {\n margin-left: var(--jp-widgets-margin);\n margin-right: var(--jp-widgets-margin);\n}\n\n.widget-toggle-buttons .jupyter-button:disabled {\n opacity: var(--jp-widgets-disabled-opacity);\n}\n\n/* Radio Buttons Styling */\n\n.widget-radio {\n width: var(--jp-widgets-inline-width);\n line-height: var(--jp-widgets-inline-height);\n}\n\n.widget-radio-box {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n box-sizing: border-box;\n flex-grow: 1;\n margin-bottom: var(--jp-widgets-radio-item-height-adjustment);\n}\n\n.widget-radio-box label {\n height: var(--jp-widgets-radio-item-height);\n line-height: var(--jp-widgets-radio-item-height);\n font-size: var(--jp-widgets-font-size);\n}\n\n.widget-radio-box input {\n height: var(--jp-widgets-radio-item-height);\n line-height: var(--jp-widgets-radio-item-height);\n margin: 0 calc( var(--jp-widgets-input-padding) * 2 ) 0 1px;\n float: left;\n}\n\n/* Color Picker Styling */\n\n.widget-colorpicker {\n width: var(--jp-widgets-inline-width);\n height: var(--jp-widgets-inline-height);\n line-height: var(--jp-widgets-inline-height);\n}\n\n.widget-colorpicker > .widget-colorpicker-input {\n flex-grow: 1;\n flex-shrink: 1;\n min-width: var(--jp-widgets-inline-width-tiny);\n}\n\n.widget-colorpicker input[type="color"] {\n width: var(--jp-widgets-inline-height);\n height: var(--jp-widgets-inline-height);\n padding: 0 2px; /* make the color square actually square on Chrome on OS X */\n background: var(--jp-widgets-input-background-color);\n color: var(--jp-widgets-input-color);\n border: var(--jp-widgets-input-border-width) solid var(--jp-widgets-input-border-color);\n border-left: none;\n flex-grow: 0;\n flex-shrink: 0;\n box-sizing: border-box;\n align-self: stretch;\n outline: none !important;\n}\n\n.widget-colorpicker.concise input[type="color"] {\n border-left: var(--jp-widgets-input-border-width) solid var(--jp-widgets-input-border-color);\n}\n\n.widget-colorpicker input[type="color"]:focus, .widget-colorpicker input[type="text"]:focus {\n border-color: var(--jp-widgets-input-focus-border-color);\n}\n\n.widget-colorpicker input[type="text"] {\n flex-grow: 1;\n outline: none !important;\n height: var(--jp-widgets-inline-height);\n line-height: var(--jp-widgets-inline-height);\n background: var(--jp-widgets-input-background-color);\n color: var(--jp-widgets-input-color);\n border: var(--jp-widgets-input-border-width) solid var(--jp-widgets-input-border-color);\n font-size: var(--jp-widgets-font-size);\n padding: var(--jp-widgets-input-padding) calc( var(--jp-widgets-input-padding) * 2 );\n min-width: 0; /* This makes it possible for the flexbox to shrink this input */\n flex-shrink: 1;\n box-sizing: border-box;\n}\n\n.widget-colorpicker input[type="text"]:disabled {\n opacity: var(--jp-widgets-disabled-opacity);\n}\n\n/* Date Picker Styling */\n\n.widget-datepicker {\n width: var(--jp-widgets-inline-width);\n height: var(--jp-widgets-inline-height);\n line-height: var(--jp-widgets-inline-height);\n}\n\n.widget-datepicker input[type="date"] {\n flex-grow: 1;\n flex-shrink: 1;\n min-width: 0; /* This makes it possible for the flexbox to shrink this input */\n outline: none !important;\n height: var(--jp-widgets-inline-height);\n border: var(--jp-widgets-input-border-width) solid var(--jp-widgets-input-border-color);\n background-color: var(--jp-widgets-input-background-color);\n color: var(--jp-widgets-input-color);\n font-size: var(--jp-widgets-font-size);\n padding: var(--jp-widgets-input-padding) calc( var(--jp-widgets-input-padding) * 2 );\n box-sizing: border-box;\n}\n\n.widget-datepicker input[type="date"]:focus {\n border-color: var(--jp-widgets-input-focus-border-color);\n}\n\n.widget-datepicker input[type="date"]:invalid {\n border-color: var(--jp-warn-color1);\n}\n\n.widget-datepicker input[type="date"]:disabled {\n opacity: var(--jp-widgets-disabled-opacity);\n}\n\n/* Play Widget */\n\n.widget-play {\n width: var(--jp-widgets-inline-width-short);\n display: flex;\n align-items: stretch;\n}\n\n.widget-play .jupyter-button {\n flex-grow: 1;\n height: auto;\n}\n\n.widget-play .jupyter-button:disabled {\n opacity: var(--jp-widgets-disabled-opacity);\n}\n\n/* Tab Widget */\n\n.jupyter-widgets.widget-tab {\n display: flex;\n flex-direction: column;\n}\n\n.jupyter-widgets.widget-tab > .p-TabBar {\n /* Necessary so that a tab can be shifted down to overlay the border of the box below. */\n overflow-x: visible;\n overflow-y: visible;\n}\n\n.jupyter-widgets.widget-tab > .p-TabBar > .p-TabBar-content {\n /* Make sure that the tab grows from bottom up */\n align-items: flex-end;\n min-width: 0;\n min-height: 0;\n}\n\n.jupyter-widgets.widget-tab > .widget-tab-contents {\n width: 100%;\n box-sizing: border-box;\n margin: 0;\n background: var(--jp-layout-color1);\n color: var(--jp-ui-font-color1);\n border: var(--jp-border-width) solid var(--jp-border-color1);\n padding: var(--jp-widgets-container-padding);\n flex-grow: 1;\n overflow: auto;\n}\n\n.jupyter-widgets.widget-tab > .p-TabBar {\n font: var(--jp-widgets-font-size) Helvetica, Arial, sans-serif;\n min-height: calc(var(--jp-widgets-horizontal-tab-height) + var(--jp-border-width));\n}\n\n.jupyter-widgets.widget-tab > .p-TabBar .p-TabBar-tab {\n flex: 0 1 var(--jp-widgets-horizontal-tab-width);\n min-width: 35px;\n min-height: calc(var(--jp-widgets-horizontal-tab-height) + var(--jp-border-width));\n line-height: var(--jp-widgets-horizontal-tab-height);\n margin-left: calc(-1 * var(--jp-border-width));\n padding: 0px 10px;\n background: var(--jp-layout-color2);\n color: var(--jp-ui-font-color2);\n border: var(--jp-border-width) solid var(--jp-border-color1);\n border-bottom: none;\n position: relative;\n}\n\n.jupyter-widgets.widget-tab > .p-TabBar .p-TabBar-tab.p-mod-current {\n color: var(--jp-ui-font-color0);\n /* We want the background to match the tab content background */\n background: var(--jp-layout-color1);\n min-height: calc(var(--jp-widgets-horizontal-tab-height) + 2 * var(--jp-border-width));\n transform: translateY(var(--jp-border-width));\n overflow: visible;\n}\n\n.jupyter-widgets.widget-tab > .p-TabBar .p-TabBar-tab.p-mod-current:before {\n position: absolute;\n top: calc(-1 * var(--jp-border-width));\n left: calc(-1 * var(--jp-border-width));\n content: \'\';\n height: var(--jp-widgets-horizontal-tab-top-border);\n width: calc(100% + 2 * var(--jp-border-width));\n background: var(--jp-brand-color1);\n}\n\n.jupyter-widgets.widget-tab > .p-TabBar .p-TabBar-tab:first-child {\n margin-left: 0;\n}\n\n.jupyter-widgets.widget-tab > .p-TabBar .p-TabBar-tab:hover:not(.p-mod-current) {\n background: var(--jp-layout-color1);\n color: var(--jp-ui-font-color1);\n}\n\n.jupyter-widgets.widget-tab > .p-TabBar .p-mod-closable > .p-TabBar-tabCloseIcon {\n margin-left: 4px;\n}\n\n/* This font-awesome strategy may not work across FA4 and FA5, but we don\'t\nactually support closable tabs, so it really doesn\'t matter */\n.jupyter-widgets.widget-tab > .p-TabBar .p-mod-closable > .p-TabBar-tabCloseIcon:before {\n font-family: FontAwesome;\n content: \'\\f00d\'; /* close */\n}\n\n.jupyter-widgets.widget-tab > .p-TabBar .p-TabBar-tabIcon,\n.jupyter-widgets.widget-tab > .p-TabBar .p-TabBar-tabLabel,\n.jupyter-widgets.widget-tab > .p-TabBar .p-TabBar-tabCloseIcon {\n line-height: var(--jp-widgets-horizontal-tab-height);\n}\n\n/* Accordion Widget */\n\n.p-Collapse {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n}\n\n.p-Collapse-header {\n padding: var(--jp-widgets-input-padding);\n cursor: pointer;\n color: var(--jp-ui-font-color2);\n background-color: var(--jp-layout-color2);\n border: var(--jp-widgets-border-width) solid var(--jp-border-color1);\n padding: calc(var(--jp-widgets-container-padding) * 2 / 3) var(--jp-widgets-container-padding);\n font-weight: bold;\n}\n\n.p-Collapse-header:hover {\n background-color: var(--jp-layout-color1);\n color: var(--jp-ui-font-color1);\n}\n\n.p-Collapse-open > .p-Collapse-header {\n background-color: var(--jp-layout-color1);\n color: var(--jp-ui-font-color0);\n cursor: default;\n border-bottom: none;\n}\n\n.p-Collapse-contents {\n padding: var(--jp-widgets-container-padding);\n background-color: var(--jp-layout-color1);\n color: var(--jp-ui-font-color1);\n border-left: var(--jp-widgets-border-width) solid var(--jp-border-color1);\n border-right: var(--jp-widgets-border-width) solid var(--jp-border-color1);\n border-bottom: var(--jp-widgets-border-width) solid var(--jp-border-color1);\n overflow: auto;\n}\n\n.p-Accordion {\n display: flex;\n flex-direction: column;\n align-items: stretch;\n}\n\n.p-Accordion .p-Collapse {\n margin-bottom: 0;\n}\n\n.p-Accordion .p-Collapse + .p-Collapse {\n margin-top: 4px;\n}\n\n\n\n/* HTML widget */\n\n.widget-html, .widget-htmlmath {\n font-size: var(--jp-widgets-font-size);\n}\n\n.widget-html > .widget-html-content, .widget-htmlmath > .widget-html-content {\n /* Fill out the area in the HTML widget */\n align-self: stretch;\n flex-grow: 1;\n flex-shrink: 1;\n /* Makes sure the baseline is still aligned with other elements */\n line-height: var(--jp-widgets-inline-height);\n /* Make it possible to have absolutely-positioned elements in the html */\n position: relative;\n}\n\n\n/* Image widget */\n\n.widget-image {\n max-width: 100%;\n height: auto;\n}\n',""]),e.exports=n},3476:e=>{"use strict";e.exports=function(e){var n=[];return n.toString=function(){return this.map((function(n){var t=function(e,n){var t,i,r,o=e[1]||"",a=e[3];if(!a)return o;if(n&&"function"==typeof btoa){var s=(t=a,i=btoa(unescape(encodeURIComponent(JSON.stringify(t)))),r="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(i),"/*# ".concat(r," */")),d=a.sources.map((function(e){return"/*# sourceURL=".concat(a.sourceRoot).concat(e," */")}));return[o].concat(d).concat([s]).join("\n")}return[o].join("\n")}(n,e);return n[2]?"@media ".concat(n[2]," {").concat(t,"}"):t})).join("")},n.i=function(e,t){"string"==typeof e&&(e=[[null,e,""]]);for(var i=0;i<e.length;i++){var r=[].concat(e[i]);t&&(r[2]?r[2]="".concat(t," and ").concat(r[2]):r[2]=t),n.push(r)}},n}},5e3:(e,n,t)=>{var i=t(1892),r=t(3422);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[e.id,r,""]]);var o=(i(e.id,r,{insert:"head",singleton:!1}),r.locals?r.locals:{});e.exports=o},7614:(e,n,t)=>{var i=t(1892),r=t(5618);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[e.id,r,""]]);var o=(i(e.id,r,{insert:"head",singleton:!1}),r.locals?r.locals:{});e.exports=o},1892:(e,n,t)=>{"use strict";var i,r=function(){var e={};return function(n){if(void 0===e[n]){var t=document.querySelector(n);if(window.HTMLIFrameElement&&t instanceof window.HTMLIFrameElement)try{t=t.contentDocument.head}catch(e){t=null}e[n]=t}return e[n]}}(),o={};function a(e,n,t){for(var i=0;i<n.length;i++){var r={css:n[i][1],media:n[i][2],sourceMap:n[i][3]};o[e][i]?o[e][i](r):o[e].push(u(r,t))}}function s(e){var n=document.createElement("style"),i=e.attributes||{};if(void 0===i.nonce){var o=t.nc;o&&(i.nonce=o)}if(Object.keys(i).forEach((function(e){n.setAttribute(e,i[e])})),"function"==typeof e.insert)e.insert(n);else{var a=r(e.insert||"head");if(!a)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");a.appendChild(n)}return n}var d,l=(d=[],function(e,n){return d[e]=n,d.filter(Boolean).join("\n")});function g(e,n,t,i){var r=t?"":i.css;if(e.styleSheet)e.styleSheet.cssText=l(n,r);else{var o=document.createTextNode(r),a=e.childNodes;a[n]&&e.removeChild(a[n]),a.length?e.insertBefore(o,a[n]):e.appendChild(o)}}function p(e,n,t){var i=t.css,r=t.media,o=t.sourceMap;if(r?e.setAttribute("media",r):e.removeAttribute("media"),o&&btoa&&(i+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(o))))," */")),e.styleSheet)e.styleSheet.cssText=i;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(i))}}var c=null,h=0;function u(e,n){var t,i,r;if(n.singleton){var o=h++;t=c||(c=s(n)),i=g.bind(null,t,o,!1),r=g.bind(null,t,o,!0)}else t=s(n),i=p.bind(null,t,n),r=function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)};return i(e),function(n){if(n){if(n.css===e.css&&n.media===e.media&&n.sourceMap===e.sourceMap)return;i(e=n)}else r()}}e.exports=function(e,n,t){return(t=t||{}).singleton||"boolean"==typeof t.singleton||(t.singleton=(void 0===i&&(i=Boolean(window&&document&&document.all&&!window.atob)),i)),e=t.base?e+t.base:e,n=n||[],o[e]||(o[e]=[]),a(e,n,t),function(n){if(n=n||[],"[object Array]"===Object.prototype.toString.call(n)){o[e]||(o[e]=[]),a(e,n,t);for(var i=n.length;i<o[e].length;i++)o[e][i]();o[e].length=n.length,0===o[e].length&&delete o[e]}}}},8001:(e,n,t)=>{"use strict";t.d(n,{N:()=>i});var i="1.5.0"}}]); |