body,html{overflow-x:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f9fafb;color:#111827;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--color-primary-dark:#1c4e8f;--color-bg:#f9fafb;--color-surface:#fff;--color-tint:#eff6ff;--radius:14px;--radius-lg:20px;--shadow:0 1px 4px #0000000f;--shadow-md:0 4px 16px #2563eb26}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}.ui-overlay{align-items:flex-end;background:#11182780;display:flex;inset:0;justify-content:center;position:fixed;z-index:1200}@media (min-width:600px){.ui-overlay{align-items:center}}.ui-modal{-webkit-overflow-scrolling:touch;background:#fff;background:var(--color-surface);border-radius:24px 24px 0 0;box-shadow:0 -8px 40px #0000002e;max-height:92vh;overflow-y:auto;padding:8px 20px 32px;position:relative;width:100%}.ui-modal:before{background:#e5e7eb;background:var(--color-border);border-radius:2px;content:"";display:block;height:4px;margin:8px auto 16px;width:40px}@media (min-width:600px){.ui-modal{border-radius:24px;margin:0;max-height:90vh;width:min(520px,96%)}.ui-modal:before{display:none}}.ui-modal h2{color:#111827;color:var(--color-text);font-size:20px;font-weight:800;margin-top:0}.ui-modal input,.ui-modal select,.ui-modal textarea{background:#f9fafb;background:var(--color-bg);border:1.5px solid #e5e7eb;border:1.5px solid var(--color-border);border-radius:14px;border-radius:var(--radius);box-sizing:border-box;color:#111827;color:var(--color-text);font-family:inherit;font-size:15px;margin-bottom:12px;margin-top:6px;padding:11px 14px;transition:border-color .15s;width:100%}.ui-modal input:focus,.ui-modal select:focus,.ui-modal textarea:focus{border-color:#2563eb;border-color:var(--color-primary-hover);outline:none}.ui-buttons{display:flex;flex-direction:column;gap:10px;margin-top:16px}@media (min-width:600px){.ui-buttons{flex-direction:row;justify-content:center}}.ui-buttons a,.ui-buttons button{background:linear-gradient(135deg,#1c4e8f,#2563eb);background:linear-gradient(135deg,var(--color-primary-dark),var(--color-primary-hover));border:none;border-radius:14px;border-radius:var(--radius);box-shadow:0 4px 16px #2563eb26;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;display:block;font-family:inherit;font-size:16px;font-weight:700;padding:14px 22px;text-align:center;text-decoration:none;transition:opacity .15s ease,transform .05s ease;width:100%}.ui-buttons button:hover{opacity:.9}.ui-buttons button:active{transform:translateY(1px)}.ui-buttons button:disabled{background:#d1d5db;box-shadow:none;cursor:not-allowed}@media (min-width:600px){.ui-buttons a,.ui-buttons button{min-width:120px;width:auto}}.kdo-button{background:linear-gradient(135deg,#1c4e8f,#2563eb);background:linear-gradient(135deg,var(--color-primary-dark),var(--color-primary-hover));border:none;border-radius:14px;border-radius:var(--radius);color:#fff;cursor:pointer;font-family:inherit;font-size:15px;font-weight:700;padding:12px 22px;transition:opacity .15s}.kdo-button:hover{opacity:.9}.ui-error{background:#fef2f2;border:1px solid #fecaca;color:#ef4444;line-height:1.5}.ui-error,.ui-info{border-radius:10px;font-size:13px;margin:8px 0;padding:10px 14px}.ui-info{background:#eff6ff;background:var(--color-tint);color:#1d4ed8}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.update-banner{align-items:center;background:linear-gradient(90deg,#3b82f6,#ff9a76);background:linear-gradient(90deg,var(--color-primary) 0,#ff9a76 100%);border-bottom:1px solid #fff3;box-shadow:0 6px 16px #ff6f6159;color:#fff;display:flex;font-size:15px;font-weight:500;gap:16px;justify-content:space-between;padding:14px 22px;position:-webkit-sticky;position:sticky;top:0;z-index:1100}.update-banner:before{content:"⚡";font-size:20px;line-height:1;margin-right:8px}.update-banner span{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:6px}.update-actions{align-items:center;display:flex;gap:10px}.update-actions button{background-color:#fff3;border:1px solid #fff6;border-radius:999px;box-shadow:none;color:#fff;margin:0;padding:8px 18px}.update-actions button:hover{background-color:#ffffff59}.update-actions button:active{transform:translateY(1px)}.update-actions .linklike{background:#0000;border:none;box-shadow:none;color:#fff;padding:0;text-decoration:underline}.backend-warning{background:#fef3c7;border:1px solid #f59e0b;border-radius:14px;border-radius:var(--radius);box-shadow:0 1px 4px #0000000f;box-shadow:var(--shadow);color:#92400e;margin:20px auto;max-width:720px;padding:18px 24px}.backend-warning h2{font-size:20px;margin:0 0 8px}.backend-warning p{font-size:16px;line-height:1.5;margin:0}@media (max-width:640px){.update-banner{align-items:stretch;flex-direction:column;text-align:center}.update-banner:before{margin:0 0 6px}.update-actions{justify-content:center}}.kdo-home{display:flex;flex-direction:column;min-height:100vh}.kdo-home,.kdo-home--list-view,.kdo-home-header{background:#eff6ff}.kdo-home-header{align-items:center;display:flex;flex-direction:row;gap:16px;justify-content:space-between;padding:52px 20px 20px}.kdo-home-header-left{display:flex;flex-direction:column}.kdo-home-greeting{color:#3b82f6;font-size:13px;font-weight:600;margin:0 0 3px}.kdo-home-title{color:#111827;font-size:26px;font-weight:800;line-height:1.1;margin:0}.kdo-home-new-list-cta{align-items:center;background:linear-gradient(135deg,#2563eb,#3b82f6);border:none;border-radius:16px;box-shadow:0 4px 16px #2563eb47;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-family:inherit;font-size:15px;font-weight:700;gap:8px;justify-content:center;padding:15px 20px;transition:opacity .15s;width:100%}.kdo-home-new-list-cta:hover{opacity:.9}.kdo-home-cards{box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:12px;padding:20px 16px 32px;width:100%}@media (min-width:768px){.kdo-home-header{box-sizing:border-box;margin:0 auto;max-width:960px;padding:52px 24px 20px;width:100%}.kdo-home-cards{display:flex;flex-direction:column;margin:0 auto;max-width:960px;padding:20px 24px 32px}}.kdo-list-card{align-items:center;background:#fff;border:none;border-radius:20px;box-shadow:0 1px 4px #0000000f;box-sizing:border-box;cursor:pointer;display:flex;gap:14px;min-width:0;padding:16px;text-align:left;transition:box-shadow .15s,transform .1s;width:100%}.kdo-list-card:hover{box-shadow:0 4px 16px #0000001a}.kdo-list-card:active{transform:scale(.99)}.kdo-list-card-icon{align-items:center;border-radius:14px;display:flex;flex-shrink:0;font-size:24px;height:50px;justify-content:center;line-height:1;width:50px}.kdo-list-card-body{flex:1 1;min-width:0}.kdo-list-card-name{color:#111827;font-size:16px;font-weight:700;margin:0 0 3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kdo-list-card-count{color:#6b7280;font-size:12px;font-weight:500;margin:0 0 8px}.kdo-list-card-progress{background:#f3f4f6;border-radius:3px;height:5px;overflow:hidden}.kdo-list-card-progress-fill{background:linear-gradient(90deg,#2563eb,#3b82f6);border-radius:3px;height:100%;min-width:0;transition:width .3s}.kdo-list-card-chevron{color:#9ca3af;flex-shrink:0;font-size:22px;line-height:1}.kdo-list-card-badge{border-radius:100px;flex-shrink:0;font-size:11px;font-weight:600;padding:3px 9px;white-space:nowrap}.kdo-list-card-badge--shared{background:#dcfce7;color:#15803d}.kdo-list-card-badge--private{background:#f3f4f6;color:#9ca3af}.kdo-list-card-reserved{color:#93c5fd;font-size:11px;font-weight:600;margin:0}.kdo-home-header-brand{align-items:center;display:flex;gap:12px;min-width:0}.kdo-home-logo{display:block;flex-shrink:0;height:40px;width:40px}.kdo-home-readonly-actions{box-sizing:border-box;display:flex;flex-wrap:wrap;gap:8px;margin:0 auto;max-width:960px;padding:12px 16px;width:100%}.kdo-home-readonly-actions .kdo-home-button{text-decoration:none}@media (min-width:768px){.kdo-home-readonly-actions{padding:12px 48px}}.kdo-home-header-actions{align-items:center;display:flex;flex-shrink:0;gap:10px}.kdo-home-share-all{align-items:center;background:#dbeafe;border:none;border-radius:50%;color:#2563eb;cursor:pointer;display:flex;height:42px;justify-content:center;padding:0;transition:background .15s;width:42px}.kdo-home-share-all:hover{background:#bfdbfe}.kdo-home-avatar{align-items:center;background:linear-gradient(135deg,#2563eb,#60a5fa);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-family:inherit;font-size:17px;font-weight:700;height:42px;justify-content:center;padding:0;transition:opacity .15s;width:42px}.kdo-home-avatar:hover{opacity:.9}@media (max-width:400px){.kdo-list-card{gap:12px;padding:12px}.kdo-list-card-icon{font-size:20px;height:42px;width:42px}.kdo-list-card-name{font-size:15px}}.kdo-home-list-view{display:flex;flex:1 1;flex-direction:column}.kdo-home-empty{align-items:center;color:#6b7280;display:flex;flex-direction:column;padding:32px 20px;text-align:center}.kdo-home-button{background:linear-gradient(135deg,#1c4e8f,#2563eb);border:none;border-radius:14px;box-shadow:0 4px 16px #2563eb26;color:#fff;cursor:pointer;display:inline-block;font-family:inherit;font-size:14px;font-weight:700;padding:11px 20px;text-decoration:none;transition:opacity .15s,transform .05s}.kdo-home-button:hover{opacity:.9}.kdo-home-button:active{transform:translateY(1px)}.kdo-home-button--icon{align-items:center;display:inline-flex;font-size:18px;justify-content:center;min-width:48px;padding:10px 14px}.kdo-sidebar{animation:slideIn .3s ease forwards;background:#fff;box-shadow:-2px 0 5px #0003;height:100vh;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;width:250px;z-index:2000}.kdo-sidebar-close{background:none;border:none;cursor:pointer;font-size:24px;left:10px;position:absolute;top:10px}@keyframes slideIn{0%{opacity:0;right:-300px}to{opacity:1;right:0}}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.kdo-button-like-link{background:none;border:none;color:#007bff;cursor:pointer;font:inherit;margin:0;padding:0;text-decoration:underline}.kdo-button-like-link:hover{text-decoration:none}.kdo-sidebar-shared{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.kdo-sidebar-shared-item{align-items:center;display:flex;gap:8px}.kdo-sidebar-shared-group{display:flex;flex-direction:column;gap:6px;margin-bottom:6px}.kdo-sidebar-shared-toggle{display:block;margin-bottom:8px}.kdo-sidebar-shared-owner-toggle{display:block}.kdo-sidebar-shared-link{background:none;border:none;color:#0f172a;cursor:pointer;flex:1 1;font:inherit;padding:0;text-align:left}.kdo-sidebar-shared-link:hover{text-decoration:underline}.kdo-sidebar-shared-remove{background:none;border:none;color:#ef4444;cursor:pointer;font-size:12px;padding:0}.kdo-help-card{background:#fff;border-radius:16px;box-shadow:0 1px 4px #0000000f;box-sizing:border-box;gap:14px;max-width:480px;padding:18px;text-align:left;width:100%}.kdo-help-card__icon{background:#eff6ff;border-radius:10px;color:#2563eb;height:36px;width:36px}.kdo-help-card__title{color:#111827;font-size:14px;margin:0 0 6px}.kdo-help-card__subtitle{color:#6b7280;line-height:1.4}.kdo-help-card__links{display:flex;flex-direction:column;gap:4px;padding:0}.kdo-help-card__links a{color:#2563eb;font-size:13px}.kdo-home-listobject{flex:1 1}.kdo-share-overlay{z-index:1200}.ui-modal.kdo-share{padding-top:8px}.kdo-share-close{align-items:center;background:#f3f4f6;border:none;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;position:absolute;right:14px;top:14px;transition:background .15s;width:32px}.kdo-share-close:hover{background:#e5e7eb}.kdo-share-head{align-items:center;display:flex;gap:12px;margin-bottom:12px;padding-right:40px}.kdo-share-icon{align-items:center;background:#eff6ff;border-radius:14px;color:#2563eb;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.ui-modal .kdo-share-title{color:#111827;font-size:18px;font-weight:800;line-height:1.25;margin:0;overflow-wrap:anywhere}.kdo-share-intro{color:#6b7280;font-size:14px;line-height:1.5;margin:0 0 12px}.kdo-share-points{background:#f9fafb;border-radius:14px;display:flex;flex-direction:column;gap:8px;list-style:none;margin:0 0 18px;padding:12px 14px}.kdo-share-points li{align-items:flex-start;color:#374151;display:flex;font-size:13px;gap:10px;line-height:1.4}.kdo-share-check{align-items:center;background:#dcfce7;border-radius:50%;color:#15803d;display:flex;flex-shrink:0;font-size:11px;font-weight:800;height:18px;justify-content:center;margin-top:1px;width:18px}.kdo-share-label{color:#374151;display:block;font-size:13px;font-weight:700;margin-bottom:6px}.kdo-share-linkrow{margin-bottom:12px}.ui-modal .kdo-share-link-input{background:#f9fafb;color:#374151;font-size:13px;margin:0;text-overflow:ellipsis}.kdo-share-primary{background:linear-gradient(135deg,#1c4e8f,#2563eb);border:none;border-radius:14px;box-shadow:0 4px 16px #2563eb4d;box-sizing:border-box;color:#fff;cursor:pointer;display:block;font-family:inherit;font-size:15px;font-weight:800;padding:14px;transition:opacity .15s;width:100%}.kdo-share-primary:hover{opacity:.9}.kdo-share-status{color:#dc2626;font-size:12px;margin-top:6px;min-height:0}.kdo-share-secondary{display:flex;gap:10px;margin-top:10px}.kdo-share-secondary-btn{align-items:center;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:14px;box-sizing:border-box;color:#374151;cursor:pointer;display:flex;flex:1 1;font-family:inherit;font-size:14px;font-weight:600;justify-content:center;padding:11px;text-decoration:none;transition:background .15s,border-color .15s,color .15s}.kdo-share-secondary-btn:hover{background:#eff6ff;border-color:#2563eb;color:#2563eb}.kdo-share-hint{color:#9ca3af;font-size:12px;line-height:1.4;margin:16px 0 0;text-align:center}.kdo_lo{padding:0;width:100%}.kdo_lo_listobject{margin-bottom:16px}.kdo_lo_separator{display:none}.kdo_lo_listheader{background:linear-gradient(135deg,var(--color-primary-dark),var(--color-primary-hover));border-radius:var(--radius-lg) var(--radius-lg) 0 0;gap:10px;margin-bottom:0;padding:14px 16px}.kdo_lo_listheader,.kdo_lo_listname{align-items:center;color:#fff;display:flex}.kdo_lo_listname{flex:1 1;font-size:15px;font-weight:700;gap:8px}.kdo_lo_toggle{align-items:center;background:#ffffff26;border:none;border-radius:8px;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.kdo_lo_toggle:hover{background:#ffffff40}.kdo_lo_toggle:focus-visible{outline:2px solid #fff9;outline-offset:2px}.kdo_lo_chevron{border-bottom:2px solid #fff;border-right:2px solid #fff;display:inline-block;height:10px;transform:rotate(45deg);transition:transform .2s;width:10px}.kdo_lo_toggle.collapsed .kdo_lo_chevron{transform:rotate(-45deg)}.kdo_lo_objects{background:var(--color-surface);border:1px solid var(--color-border);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:none;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:8px;padding:12px}.kdo-add-tile{background:var(--color-tint);border:1.5px dashed var(--color-primary);border-radius:var(--radius);color:var(--color-primary-hover);font-family:inherit;font-size:15px;font-weight:600;gap:8px;padding:14px;transition:background .15s}.kdo-add-icon{font-size:20px}.kdo-logoclose{float:right;height:20px;width:20px}.kdo-lo-img-lightbox{align-items:center;background:#000000d9;cursor:pointer;display:flex;inset:0;justify-content:center;position:fixed;z-index:5000}.kdo-lo-img-lightbox img{border-radius:16px;max-height:90vh;max-width:90%;object-fit:contain}.kdo-lo-img-lightbox-close{color:#fff;cursor:pointer;font-size:32px;line-height:1;position:absolute;right:24px;top:20px}.kdo-help-card{align-items:flex-start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);display:flex;gap:16px;margin-top:16px;padding:20px}.kdo-help-card__icon{align-items:center;background:var(--color-tint);border-radius:50%;color:var(--color-primary-hover);display:flex;flex-shrink:0;font-size:18px;font-weight:800;height:40px;justify-content:center;width:40px}.kdo-help-card__content{flex:1 1}.kdo-help-card__title{color:var(--color-text);font-weight:700;margin:0 0 4px}.kdo-help-card__subtitle{color:var(--color-muted);font-size:13px;margin:0 0 4px}.kdo-help-card__links{grid-gap:6px;display:grid;gap:6px;list-style:none;margin:8px 0 0;padding-left:0}.kdo-help-card__links a{color:var(--color-primary-hover);font-size:14px;font-weight:600;text-decoration:none}.kdo-help-card__links a:hover{text-decoration:underline}.kdo_lo_single-body .kdo-object{max-width:100%}.kdo_lo_import-bar{align-items:center;background:#fff;border-bottom:1px solid #f3f4f6;box-sizing:border-box;display:flex;flex-shrink:0;gap:8px;padding:10px 16px}.kdo_lo_import-input{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:10px;color:#111827;flex:1 1;font-family:inherit;font-size:13px;min-width:0;outline:none;padding:8px 12px}.kdo_lo_import-input::placeholder{color:#9ca3af}.kdo_lo_import-input:focus{border-color:#2563eb}.kdo_lo_import-btn{background:#2563eb;border:none;border-radius:10px;color:#fff;cursor:pointer;flex-shrink:0;font-family:inherit;font-size:13px;font-weight:700;padding:8px 16px;transition:opacity .15s;white-space:nowrap}.kdo_lo_import-btn:hover{opacity:.9}.kdo_lo_single-header{background:linear-gradient(180deg,#1c4e8f,#2563eb);padding-bottom:20px}.kdo_lo_single-topbar{align-items:center;box-sizing:border-box;display:flex;justify-content:space-between;padding:44px 20px 0;position:relative}.kdo_lo_single-title{color:#fff;font-size:17px;font-weight:700;left:50%;margin:0;max-width:200px;overflow:hidden;pointer-events:none;position:absolute;text-overflow:ellipsis;transform:translateX(-50%);white-space:nowrap}.kdo_lo_back-btn{align-items:center;background:#ffffff26;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;padding:0;transition:background .15s;width:36px}.kdo_lo_back-btn:hover{background:#ffffff40}.kdo_lo_header-actions{display:flex;gap:8px}.kdo_lo_header-action-btn{align-items:center;background:#ffffff26;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;padding:0;transition:background .15s;width:36px}.kdo_lo_header-action-btn:hover{background:#ffffff40}.kdo_lo_header-action-btn--after-gap{margin-left:16px}.kdo_lo_stats-row{box-sizing:border-box;display:flex;gap:8px;overflow-x:auto;padding:16px 20px 0;scrollbar-width:none}.kdo_lo_stats-row::-webkit-scrollbar{display:none}.kdo_lo_stat-pill{background:#ffffff24;border-radius:12px;flex:1 1;min-width:80px;padding:10px 14px;text-align:center}.kdo_lo_stat-value{color:#fff;display:block;font-size:20px;font-weight:800;line-height:1}.kdo_lo_stat-label{color:#fffc;display:block;font-size:11px;font-weight:500;margin-top:3px}.kdo_lo_single-body{background:#f9fafb;box-sizing:border-box;display:flex;flex-direction:column;gap:10px;min-height:calc(100vh - 200px);padding:16px 16px 80px}@media (min-width:768px){.kdo_lo_listobject{box-sizing:border-box;margin:0 auto;max-width:960px;padding:0 16px;width:100%}.kdo_lo_single-topbar{margin:0 auto;max-width:960px;padding:44px 24px 0}.kdo_lo_stats-row{margin:0 auto;max-width:960px;padding:16px 24px 0}.kdo_lo_import-bar{padding:10px 24px}.kdo_lo_import-bar,.kdo_lo_single-body{box-sizing:border-box;margin:0 auto;max-width:960px;width:100%}.kdo_lo_single-body{padding:20px 24px 80px}.kdo_lo_objects{grid-gap:10px;background:#f9fafb;border:none;border-radius:0;box-shadow:none;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));padding:16px 0}}@media (max-width:480px){.kdo_lo_single-title{flex:1 1;margin:0 8px;max-width:none;min-width:0;position:static;text-align:center;transform:none}}.kdo-object{align-items:center;background:#fff;border:1.5px solid #f3f4f6;border-radius:16px;box-shadow:0 1px 3px #0000000a;box-sizing:border-box;display:flex;gap:12px;max-width:600px;min-width:0;padding:12px;position:relative;transition:box-shadow .15s,border-color .15s;width:100%}.kdo-object:hover{border-color:#dbeafe;box-shadow:0 2px 8px #2563eb1a}.kdo-object--reserved{border-color:#dcfce7}.kdo-object-icon{align-items:center;border-radius:12px;cursor:pointer;display:flex;flex-shrink:0;height:52px;justify-content:center;overflow:hidden;width:52px}.kdo-object-icon img{height:100%;object-fit:cover;width:100%}.kdo-object-emoji{font-size:24px;line-height:1}.kdo-object-body{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.kdo-object-title{color:#111827;font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kdo-object-title a{color:#111827;text-decoration:none}.kdo-object-title a:hover{color:#2563eb}.kdo-object-store{background:#eff6ff;border-radius:100px;color:#2563eb;display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;width:-webkit-fit-content;width:fit-content}.kdo-object-price{color:#2563eb;font-size:14px;font-weight:800}.kdo-object-actions{align-items:center;display:flex;flex-direction:column;flex-shrink:0;gap:6px}.kdo-object-action-btn{align-items:center;background:#f9fafb;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;height:30px;justify-content:center;padding:0;transition:background .15s,color .15s;width:30px}.kdo-object-action-btn:hover{background:#eff6ff;color:#2563eb}.kdo-object-action-btn--delete:hover{background:#fef2f2;color:#dc2626}.kdo-object-status-badge{align-items:center;border-radius:100px;display:inline-flex;font-size:11px;font-weight:700;gap:4px;padding:3px 8px}.kdo-object-status-reserved{background:#dcfce7;color:#15803d}.kdo-object-status-available{background:#f3f4f6;color:#9ca3af}.kdo-reserved-ribbon{background:#dcfce7;color:#15803d;width:-webkit-fit-content;width:fit-content}.kdo-add-tile{align-items:center;background:#eff6ff;border:2px dashed #bfdbfe;border-radius:16px;box-sizing:border-box;cursor:pointer;display:flex;height:52px;justify-content:center;max-width:600px;padding:0;transition:background .15s,border-color .15s;width:100%}.kdo-add-tile:hover{background:#dbeafe;border-color:#3b82f6}.kdo-add-icon{color:#3b82f6;font-size:24px;line-height:1}@media (max-width:400px){.kdo-object{gap:10px;padding:10px}.kdo-object-icon{height:44px;width:44px}.kdo-object-title{font-size:13px}}.kdo-res-product-mini{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:12px;margin-bottom:16px;padding:12px 0 16px}.kdo-res-product-thumb{background:var(--color-tint);border-radius:12px;flex-shrink:0;height:52px;object-fit:cover;width:52px}.kdo-res-product-name{color:var(--color-text);font-size:15px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kdo-res-product-price{color:var(--color-primary-hover);font-size:13px;font-weight:700}.kdo-res-field{margin-bottom:12px}.kdo-res-label{color:#374151;display:block;font-size:13px;font-weight:700;margin-bottom:6px}.kdo-res-required-badge{background:#fef9c3;border-radius:4px;color:#854d0e;font-size:11px;font-weight:600;margin-left:6px;padding:2px 6px}.kdo-res-input{background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:12px;box-sizing:border-box;color:var(--color-text);font-family:inherit;font-size:15px;padding:11px 14px;transition:border-color .15s;width:100%}.kdo-res-input:focus{border-color:var(--color-primary-hover);outline:none}.kdo-res-hint{color:var(--color-muted);font-size:11px;line-height:1.4;margin-top:4px}.kdo-res-anon-banner{align-items:center;background:var(--color-tint);border-radius:12px;display:flex;gap:10px;margin-bottom:16px;padding:12px 14px}.kdo-res-anon-text{color:#1d4ed8;font-size:12px;line-height:1.4}.kdo-res-buy-banner{align-items:flex-start;background:#fef9c3;border-radius:12px;display:flex;gap:10px;margin-bottom:16px;padding:12px 14px}.kdo-res-buy-text{color:#854d0e;font-size:12px;line-height:1.4;margin:0}.kdo-res-cta{background:linear-gradient(135deg,var(--color-primary-dark),var(--color-primary-hover));border:none;border-radius:var(--radius);box-shadow:0 4px 16px #2563eb4d;color:#fff;cursor:pointer;font-family:inherit;font-size:16px;font-weight:800;padding:15px;transition:opacity .15s;width:100%}.kdo-res-cta:hover{opacity:.9}.kdo-res-cta:disabled{background:#d1d5db;box-shadow:none;cursor:not-allowed}.kdo-reserved-ribbon{align-items:center;background:#fee2e2;border-radius:100px;color:#dc2626;display:inline-flex;font-size:11px;font-weight:700;gap:5px;padding:3px 10px}.kdo-res-btn{background:linear-gradient(135deg,var(--color-primary-dark),var(--color-primary-hover));border:none;border-radius:100px;color:#fff;cursor:pointer;font-family:inherit;font-size:13px;font-weight:700;padding:7px 16px;transition:opacity .15s}.kdo-res-btn:hover{opacity:.9}.notification-container{display:flex;flex-direction:column;gap:12px;pointer-events:none;position:fixed;right:20px;top:20px;z-index:9999}.notification{--toast-duration:3000ms;--progress-color:#16a34a;--progress-border:#16a34a40;--progress-text:#000;align-items:center;animation:fadeInToast .25s ease-out;background:#fff;border:1px solid var(--progress-border);border-radius:12px;box-shadow:0 15px 35px #0f172a33;color:var(--progress-text);display:flex;font-size:14px;font-weight:600;gap:12px;max-width:360px;overflow:hidden;padding:18px 22px 20px;pointer-events:all;position:relative}.notification:after{animation:toast-progress var(--toast-duration) linear forwards;background:var(--progress-color);bottom:0;content:"";height:4px;left:0;position:absolute;transform:scaleX(0);transform-origin:left;width:100%}.notification.success{--progress-color:#16a34a;--progress-border:#16a34a40;--progress-text:#000}.notification.error{--progress-color:#dc2626;--progress-border:#dc262640;--progress-text:#991b1b}.notification.warning{--progress-color:#f59e0b;--progress-border:#f59e0b40;--progress-text:#b45309}.notification.info{--progress-color:#3b82f6;--progress-border:#3b82f640;--progress-text:#1d4ed8}.notification-message{flex:1 1}.notification-action{background:#0000;border:1px solid var(--progress-color);border-radius:20px;color:var(--progress-text);cursor:pointer;font-size:13px;font-weight:600;padding:4px 12px;transition:all .15s ease-in-out}.notification-action:hover{background:#ffffff4d}.notification-close{background:#0000;border:none;color:var(--progress-text);cursor:pointer;font-size:18px;font-weight:600;line-height:1;opacity:.6;padding:2px 6px;position:absolute;right:8px;top:8px;transition:opacity .15s ease-in-out}.notification-close:hover{opacity:1}@keyframes toast-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes fadeInToast{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.notification-container{left:10px;right:10px;top:10px}.notification{align-items:flex-start;flex-direction:column;gap:8px;max-width:none;text-align:left}.notification-action{text-align:center;width:100%}.notification-close{right:10px;top:10px}}.kdo_menu{display:inline-block;padding-left:10px;position:relative}.kdo_menu_button{all:unset;background:none;border:1px solid #0000;border-radius:10px;color:inherit;cursor:pointer;font-size:20px;outline:none;padding:4px 8px;transition:border .2s ease}.kdo_menu_button:hover{background-color:initial;border:1px solid #ccc}.kdo_menu_popup{background:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 2px 6px #0000001a;min-width:130px;position:absolute;right:0;top:100%;z-index:10}.kdo_menu_item{cursor:pointer;font-size:14px;padding:8px 12px;text-align:left;white-space:nowrap}.kdo_menu_item:hover{background:#f0f0f0}.ui-image-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr);margin:12px 0}.ui-image-thumb{aspect-ratio:1;background:var(--color-bg);border:2px solid var(--color-border);border-radius:12px;cursor:pointer;overflow:hidden;padding:0;transition:border-color .15s}.ui-image-thumb.selected{border-color:var(--color-primary-hover);box-shadow:0 0 0 3px var(--color-tint)}.ui-image-thumb img{display:block;height:100%;object-fit:cover;width:100%}.url-importer-input-wrap{display:flex;gap:10px;margin:12px 0}.url-importer-input-wrap input{background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:12px;color:var(--color-text);flex:1 1;font-family:inherit;font-size:15px;padding:11px 14px}.url-importer-input-wrap input:focus{border-color:var(--color-primary-hover);outline:none}.oe-close-btn{align-items:center;background:#f3f4f6;border:none;border-radius:50%;cursor:pointer;display:flex;height:32px;justify-content:center;padding:6px;position:absolute;right:14px;top:14px;transition:background .15s;width:32px}.oe-close-btn:hover{background:#e5e7eb}.oe-title{color:#111827;font-size:20px;font-weight:800;margin:0 0 16px;padding-right:40px}.oe-image-preview{background:#eff6ff;border-radius:16px;cursor:pointer;height:160px;margin-bottom:16px;overflow:hidden;width:100%}.oe-image-preview img{height:100%;object-fit:contain;object-position:center;width:100%}.oe-field{margin-bottom:14px}.oe-label{align-items:center;color:#374151;display:flex;font-size:13px;font-weight:700;gap:8px;margin-bottom:6px}.oe-required{background:#fef9c3;border-radius:4px;color:#854d0e;font-size:11px;font-weight:600;padding:2px 6px}.oe-input{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:12px;box-sizing:border-box;color:#111827;font-family:inherit;font-size:15px;padding:11px 14px;transition:border-color .15s;width:100%}.oe-input:focus{background:#fff;border-color:#2563eb;outline:none}.oe-input:disabled{background:#f3f4f6;color:#6b7280;cursor:default}.oe-textarea{line-height:1.5;min-height:80px;resize:vertical}.oe-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}.oe-btn-primary{background:linear-gradient(135deg,#1c4e8f,#2563eb);border:none;border-radius:14px;box-shadow:0 4px 16px #2563eb4d;color:#fff;cursor:pointer;font-family:inherit;font-size:16px;font-weight:800;padding:15px;transition:opacity .15s;width:100%}.oe-btn-primary:hover{opacity:.9}.oe-btn-primary:disabled{background:#d1d5db;box-shadow:none;cursor:not-allowed}.oe-btn-secondary{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:14px;color:#374151;cursor:pointer;font-family:inherit;font-size:15px;font-weight:600;padding:13px;transition:background .15s,border-color .15s;width:100%}.oe-btn-secondary:hover{background:#eff6ff;border-color:#2563eb;color:#2563eb}.oe-btn-secondary:disabled{cursor:not-allowed;opacity:.5}.oe-btn-reserve{background:#dcfce7;border:none;border-radius:14px;color:#15803d;cursor:pointer;font-family:inherit;font-size:15px;font-weight:700;padding:13px;transition:background .15s;width:100%}.oe-btn-reserve:hover{background:#bbf7d0}.oe-btn-reserve:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.oe-link-btn{background:none;border:none;color:#fffc;cursor:pointer;display:inline;font-family:inherit;font-size:12px;margin-left:8px;padding:0;text-decoration:underline}.ov-reserved-banner{align-items:flex-start;background:linear-gradient(135deg,#dc2626,#ef4444);border-radius:12px;color:#fff;display:flex;font-weight:600;gap:10px;margin-bottom:16px;padding:12px 14px}.ov-reserved-icon{flex-shrink:0;font-size:18px;line-height:1}.ov-reserved-text{display:block;font-size:14px}.ov-reserver-details{background:#fef2f2;border-radius:10px;color:#dc2626;font-size:13px;font-weight:600;margin:-8px 0 14px;padding:10px 14px}.ov-listselector{margin-top:4px}.objectviewer-overlay{align-items:flex-end;background:#0f172aa6;display:flex;inset:0;justify-content:center;position:fixed;z-index:3000}.objectviewer-card{-webkit-overflow-scrolling:touch;background:#fff;border-radius:24px 24px 0 0;box-shadow:0 -8px 40px #0f172a33;display:flex;flex-direction:column;max-height:92vh;overflow:hidden;overflow-y:auto;position:relative;width:100%}.objectviewer-card:before{background:#e5e7eb;border-radius:2px;content:"";display:block;flex-shrink:0;height:4px;margin:12px auto 8px;width:40px}.objectviewer-close{align-items:center;background:#f3f4f6;border:none;border-radius:50%;cursor:pointer;display:flex;height:32px;justify-content:center;padding:6px;position:absolute;right:14px;top:14px;width:32px}.objectviewer-content{display:flex;flex-direction:column;gap:16px;padding:16px 20px 32px}.objectviewer-media{background:#dbeafe;border-radius:20px;flex-shrink:0;height:220px;overflow:hidden;width:100%}.objectviewer-media img{height:100%;object-fit:contain;object-position:center;width:100%}.objectviewer-body{display:flex;flex-direction:column;gap:12px}.objectviewer-list{color:#9ca3af;font-size:11px;font-weight:700;letter-spacing:.08em;margin:0;text-transform:uppercase}.objectviewer-title{color:#111827;font-size:20px;font-weight:800;line-height:1.25;margin:0}.objectviewer-description{color:#6b7280;font-size:14px;line-height:1.6;margin:0}.objectviewer-price{color:#2563eb;font-size:26px;font-weight:800}.objectviewer-status-badge{align-items:center;border-radius:100px;display:inline-flex;font-size:12px;font-weight:700;gap:6px;padding:5px 12px;width:-webkit-fit-content;width:fit-content}.objectviewer-status-available{background:#dcfce7;color:#15803d}.objectviewer-status-reserved{background:#fee2e2;color:#dc2626}.objectviewer-status-dot{background:currentColor;border-radius:50%;height:7px;width:7px}.objectviewer-meta{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.objectviewer-meta-item{background:#f9fafb;border-radius:14px;padding:12px 14px}.objectviewer-meta-label{color:#9ca3af;display:block;font-size:11px;letter-spacing:.08em;margin-bottom:3px;text-transform:uppercase}.objectviewer-meta-value{color:#111827;font-size:15px;font-weight:700}.objectviewer-link-btn{align-items:center;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:14px;color:#6b7280;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px;text-decoration:none}.objectviewer-link-btn:hover{background:#eff6ff;border-color:#2563eb;color:#2563eb}.objectviewer-reserved{align-items:center;background:#fee2e2;border-radius:12px;color:#dc2626;display:flex;font-size:13px;font-weight:700;gap:8px;padding:10px 14px}.objectviewer-reserved-dot{background:#dc2626;border-radius:50%;display:inline-block;height:8px;width:8px}.objectviewer-primary{background:linear-gradient(135deg,#1c4e8f,#2563eb);border:none;border-radius:16px;box-shadow:0 4px 16px #2563eb4d;color:#fff;cursor:pointer;display:block;font-family:inherit;font-size:16px;font-weight:800;padding:15px;text-align:center;text-decoration:none;transition:opacity .15s;width:100%}.objectviewer-primary:hover{opacity:.9}@media (min-width:768px){.objectviewer-overlay{align-items:center;padding:24px}.objectviewer-card{border-radius:28px;box-shadow:0 35px 60px #0f172a40;max-height:90vh;width:min(680px,100%)}.objectviewer-card:before{display:none}.objectviewer-content{flex-direction:row;gap:24px;padding:32px}.objectviewer-media{flex:0 0 40%;height:auto;min-height:320px}.objectviewer-body{flex:1 1}}:root{--color-primary:#3b82f6;--color-primary-hover:#2563eb;--color-bg:#fff;--color-text:#111827;--color-muted:#6b7280;--color-border:#e5e7eb;--radius:12px;--shadow:0 8px 24px #0000000d}.kdo-banner{align-items:center;background:linear-gradient(135deg,#1c4e8f,#2563eb);box-shadow:0 2px 12px #1c4e8f40;color:#fff;display:flex;height:60px;justify-content:space-between;padding:0 16px;position:relative}.kdo-ban-title{color:#fff;font-size:18px;font-weight:700;left:50%;margin:0;position:absolute;transform:translateX(-50%)}.kdo-ban-title h3{font-size:16px;font-weight:700;margin:0}.kdo-ban-logo{cursor:pointer;height:40px;width:40px}.kdo-ban-lienpartage{color:#fff;height:40px;padding-right:10px;right:12px;text-align:left;width:40px}.kdo-ban-deco,.kdo-ban-lienpartage{color:#3b82f6;color:var(--color-primary);position:absolute}.kdo-ban-deco{left:12px}.kdo-hamburger-icon{cursor:pointer;display:flex;flex-direction:column;height:18px;justify-content:space-between;padding:8px;transition:all .3s ease;width:24px}.kdo-hamburger-icon:hover{opacity:.8}.kdo-hamburger-icon span{background-color:#fff;border-radius:1px;display:block;height:2px;transition:all .3s ease;width:100%}.kdo-hamburger-icon:hover span:first-child{transform:translateY(1px)}.kdo-hamburger-icon:hover span:nth-child(3){transform:translateY(-1px)}.kdo-footer{align-items:center;border-top:3px solid #000;color:#000;display:flex;flex-direction:column;font-weight:500;justify-content:flex-start;padding:12px}.kdo-footer-elem{margin-bottom:10px}.kdo-footer-version{font-size:.8em;margin-top:10px}.container{margin:0 auto;max-width:500px;padding:32px 20px;text-align:center}.subtitle{color:var(--color-muted);font-size:17px;line-height:1.6;margin-bottom:24px}.features{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0 0 28px;padding:0;text-align:left}.features li{align-items:flex-start;background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--color-text);display:flex;font-size:15px;gap:10px;padding:12px 16px}.features li:before{color:var(--color-primary-hover);content:"✓";flex-shrink:0;font-weight:800;margin-top:1px}.cta-button{background:linear-gradient(135deg,var(--color-primary-dark),var(--color-primary-hover));border-radius:var(--radius);box-shadow:0 4px 16px #2563eb4d;color:#fff;display:inline-block;font-size:16px;font-weight:800;margin-bottom:12px;padding:15px 28px;text-decoration:none;transition:opacity .15s}.cta-button:hover{opacity:.9}.image-container{border-radius:var(--radius-lg);box-shadow:0 8px 32px #0000001f;margin-top:32px;overflow:hidden}.image-container img{display:block;height:auto;width:100%}.kdo-connexion-logo{align-items:center;display:flex;gap:10px;justify-content:center;margin-bottom:20px}.kdo-connexion-logo-square{background:linear-gradient(135deg,#1c4e8f,#2563eb);border-radius:10px;flex-shrink:0;height:36px;width:36px}.kdo-connexion-logo-text{color:#111827;font-size:18px;font-weight:800}.kdo-connexion-box{display:flex;flex-direction:column}.kdo-connexion-box h2{color:#111827;font-size:24px;font-weight:800;margin:0 0 4px}.kdo-connexion-subtitle{color:#6b7280;font-size:14px;line-height:1.5;margin:0 0 20px}.kdo-connexion-label{color:#374151;display:block;font-size:13px;font-weight:700;margin-bottom:6px}.kdo-connexion-input{background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:12px;box-sizing:border-box;color:#111827;font-family:inherit;font-size:15px;margin-bottom:4px;padding:12px 14px;transition:border-color .15s;width:100%}.kdo-connexion-input:focus{background:#fff;border-color:#2563eb;outline:none}.kdo-connexion-cta{background:linear-gradient(135deg,#1c4e8f,#2563eb);border:none;border-radius:14px;box-shadow:0 4px 16px #2563eb4d;color:#fff;cursor:pointer;font-family:inherit;font-size:16px;font-weight:800;margin-top:12px;padding:15px;transition:opacity .15s;width:100%}.kdo-connexion-cta:hover{opacity:.9}.kdo-connexion-cta:disabled{background:#d1d5db;box-shadow:none;cursor:not-allowed}.kdo-connexion-hint{color:#9ca3af;font-size:12px;margin:8px 0 0;text-align:center}.kdo-connexion-divider{align-items:center;display:flex;gap:10px;margin:16px 0}.kdo-connexion-divider-line{background:#e5e7eb;flex:1 1;height:1px}.kdo-connexion-divider-text{color:#9ca3af;font-size:13px;font-weight:500}.google-button-wrapper{margin-bottom:10px}.fb-button{margin-bottom:0}.kdo-connexion-footer{color:#6b7280;font-size:13px;margin-top:16px;text-align:center}.kdo-connexion-footer a{color:#2563eb;font-weight:600;text-decoration:none}.kdo-connexion-success{padding:20px 0;text-align:center}.kdo-connexion-success-icon{font-size:40px}.kdo-connexion-success h2{font-size:20px;font-weight:800;margin:12px 0 8px}.kdo-connexion-success p{color:#6b7280;font-size:14px;line-height:1.5}.kdo-logoclose{cursor:pointer;height:28px;opacity:.6;position:absolute;right:16px;top:16px;width:28px}.kdo-logoclose:hover{opacity:1}.social-login-button{align-items:center;background-color:#fff!important;border:1px solid #dadce0!important;border-radius:4px;color:#3c4043!important;cursor:pointer;display:flex;font-family:Roboto,sans-serif!important;font-size:14px!important;font-weight:500;justify-content:start;margin:5px auto;max-width:250px;padding:10px 15px;transition:box-shadow .2s;width:100%}.social-login-button:hover{background-color:#f0f5fe!important}.social-login-icon{height:20px;margin-right:10px;width:20px}.kdo-install-hint{color:#555;font-size:14px;margin-top:6px}.extension-banner{align-items:center;background:linear-gradient(90deg,var(--color-primary) 0,#60a5fa 100%);border-bottom:1px solid #fff3;box-shadow:0 6px 16px #3b82f64d;color:#fff;display:flex;font-size:14px;font-weight:500;gap:16px;justify-content:space-between;padding:12px 22px;position:-webkit-sticky;position:sticky;top:0;z-index:1090}.extension-banner span{flex:1 1;min-width:0}.extension-banner .linklike{color:#fff;font-weight:700;text-decoration:underline;white-space:nowrap}.extension-banner-actions{align-items:center;display:flex;flex-shrink:0;gap:14px}.extension-banner-dismiss{background:#0000;border:none;color:#fff;cursor:pointer;font-size:16px;line-height:1;opacity:.8;padding:4px}.extension-banner-dismiss:hover{opacity:1}@media (max-width:640px){.extension-banner{align-items:stretch;flex-direction:column;text-align:center}.extension-banner-actions{justify-content:center}}
/*# sourceMappingURL=main.0fac695b.css.map*/