:root{--bg: #f1f2f4;--surface: #ffffff;--surface-2: #f1f2f4;--section-bg: #fafafa;--card-bg: #ffffff;--border: #e3e4e8;--text: #1a1a1f;--text-muted: #5f6470;--text-soft: color-mix(in srgb, var(--text) 72%, transparent);--accent: #8800ff;--accent-text: #ffffff;--danger: #dc2626;--hover: color-mix(in srgb, var(--text) 6%, transparent);--warn-bg: #fef3c7;--warn-text: #92400e;--danger-bg: #fee2e2;--danger-text: #991b1b;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 4px 12px rgba(0, 0, 0, .04);color-scheme:light dark;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}@media (prefers-color-scheme: dark){:root{--bg: #0f1014;--surface: #1a1c22;--surface-2: #232631;--section-bg: #1a1c22;--card-bg: #262934;--border: #2c2f3a;--text: #e8eaf0;--text-muted: #9097a8;--accent: #a438f2;--warn-bg: color-mix(in srgb, #f59e0b 18%, var(--surface));--warn-text: #fbbf24;--danger-bg: color-mix(in srgb, #ef4444 18%, var(--surface));--danger-text: #fca5a5;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 4px 12px rgba(0, 0, 0, .3)}}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,system-ui,sans-serif;font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;background:transparent;border:1px solid transparent;cursor:pointer;padding:6px 10px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .12s,color .12s,border-color .12s,transform 80ms}button:hover{background:var(--surface-2)}button:active{transform:scale(.98)}button:disabled{opacity:.45;cursor:not-allowed;transform:none}button.primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}button.primary:hover{filter:brightness(1.08)}button.secondary{background:var(--surface-2);border-color:var(--border)}button.secondary:hover{border-color:color-mix(in srgb,var(--text) 20%,var(--border))}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}input,textarea,select{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:8px 10px;width:100%}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent)}.plinks-dashboard{display:grid;grid-template-columns:var(--sidebar-width, 240px) 1fr;height:100vh}.plinks-mobile-menu-btn{display:none;position:fixed;top:calc(var(--safe-top) + 8px);left:calc(var(--safe-left) + 8px);z-index:55;background:var(--surface);border:1px solid var(--border);border-radius:8px;width:40px;height:40px;padding:0;font-size:18px;box-shadow:var(--shadow)}.plinks-sidebar-wrap{display:contents}@media (max-width: 720px){.plinks-dashboard{grid-template-columns:1fr}.plinks-mobile-menu-btn{display:flex;align-items:center;justify-content:center}.plinks-sidebar-wrap{display:block;position:fixed;top:0;left:0;bottom:0;width:260px;z-index:40;transform:translate(-100%);transition:transform .2s ease-out;box-shadow:var(--shadow)}.plinks-sidebar-wrap.open{transform:translate(0)}.plinks-sidebar-wrap .plinks-sidebar{height:100%}}.plinks-drawer-backdrop{display:none}@media (max-width: 720px){.plinks-drawer-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:35}}.plinks-sidebar{background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:calc(var(--safe-top) + 16px) 12px calc(var(--safe-bottom) + 16px) calc(var(--safe-left) + 12px);overflow-y:auto}.plinks-sidebar-header h1{margin:0 0 16px;font-weight:700}.plinks-brand{display:flex;align-items:center;gap:10px}.plinks-brand-text{font-size:18px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.plinks-brand-wordmark{height:18px;width:auto;display:block;filter:var(--logo-filter, none)}@media (prefers-color-scheme: dark){:root{--logo-filter: invert(1)}}.plinks-logo{display:inline-block;width:32px;height:32px;border-radius:8px;overflow:hidden;flex-shrink:0}.plinks-logo img{width:100%;height:100%;display:block}.plinks-sidebar-nav{display:flex;flex-direction:column;gap:2px}.plinks-sidebar-item{position:relative;display:flex;align-items:center;gap:4px;padding:4px 6px;border-radius:8px;text-align:left;color:var(--text-muted);transition:background .12s,color .12s}.plinks-sidebar-item:hover{background:var(--hover);color:var(--text)}.plinks-sidebar-item.active{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);font-weight:600}.plinks-sidebar-icon-btn{position:relative;padding:0;width:30px;height:30px;flex-shrink:0;line-height:1;color:inherit}.plinks-sidebar-icon{display:flex;align-items:center;justify-content:center}.plinks-sidebar-color-dot{position:absolute;right:2px;bottom:2px;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--surface)}.plinks-sidebar-name-btn{flex:1;justify-content:flex-start;text-align:left;padding:6px 4px;color:inherit;background:transparent}.plinks-sidebar-name-btn:hover{background:transparent}.plinks-sidebar-add-btn,.plinks-sidebar-add input{margin-top:8px;color:var(--text-muted)}.plinks-sidebar-add-btn{text-align:left;padding:8px 10px}.plinks-icon-picker{position:absolute;left:0;top:calc(100% + 4px);z-index:50;width:232px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md, 10px);box-shadow:var(--shadow);padding:8px;display:flex;flex-direction:column;gap:8px}.plinks-icon-picker-search{width:100%;font-size:13px;padding:7px 10px}.plinks-icon-picker-scroll{max-height:300px;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.plinks-icon-picker-cat{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding:4px 2px 2px}.plinks-icon-picker-grid{display:grid;grid-template-columns:repeat(6,34px);gap:2px}.plinks-icon-picker-item{width:34px;height:34px;padding:0;border-radius:7px;color:var(--text-muted)}.plinks-icon-picker-item:hover{color:var(--text);background:var(--hover)}.plinks-icon-picker-item.is-active{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.plinks-icon-picker-empty{font-size:13px;color:var(--text-muted);padding:8px 2px}.plinks-main{overflow:auto;padding:24px 32px calc(var(--safe-bottom) + 24px) 32px}.plinks-main-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.plinks-main-header h2{margin:0;font-size:22px;font-weight:700;letter-spacing:-.02em}.plinks-space-actions{display:flex;gap:2px;margin-right:auto}.plinks-space-actions .plinks-section-icon-btn{width:30px;height:30px}.plinks-space-name-input{font-size:22px;font-weight:700;letter-spacing:-.02em;padding:2px 8px;max-width:420px}.plinks-columns{display:flex;flex-direction:row;gap:16px;align-items:flex-start;overflow-x:auto;padding-bottom:24px}.plinks-column{flex:1 1 300px;min-width:300px;max-width:420px;overflow:visible;display:flex;flex-direction:column;gap:12px;min-height:80px;border-radius:8px;padding:4px;transition:background .15s}.plinks-columns.is-snapped .plinks-column:not(.is-extra){flex:0 0 var(--plinks-col-w);width:var(--plinks-col-w);min-width:0;max-width:none}.plinks-column.is-extra{flex:0 0 96px;min-width:96px;border:1px dashed transparent}.plinks-column.is-extra .plinks-add-section{padding:8px;justify-content:center}.plinks-column.is-extra .plinks-add-section span{display:none}.plinks-column.is-over{background:color-mix(in srgb,var(--accent) 8%,transparent);outline:2px dashed color-mix(in srgb,var(--accent) 40%,transparent);outline-offset:-2px}@media (max-width: 720px){.plinks-main{padding:calc(var(--safe-top) + 56px) 16px calc(var(--safe-bottom) + 16px) 16px}.plinks-columns{flex-direction:column;overflow-x:visible}.plinks-column{flex:none;width:100%}}.plinks-section{background:var(--section-bg);border:1px solid var(--border);border-radius:10px;padding:12px;box-shadow:var(--shadow);max-width:100%}.plinks-section.has-color{background:color-mix(in srgb,var(--section-color) 36%,var(--section-bg));border-color:color-mix(in srgb,var(--section-color) 45%,var(--border))}@media (prefers-color-scheme: dark){.plinks-section.has-color{background:color-mix(in srgb,var(--section-color) 22%,var(--section-bg));border-color:color-mix(in srgb,var(--section-color) 35%,var(--border))}}.plinks-section.is-over{border-color:var(--accent)}.plinks-section.is-url-over{border-color:var(--accent);border-style:dashed;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.plinks-section-header{display:flex;align-items:center;justify-content:space-between;padding:4px 2px 8px;border-bottom:1px solid color-mix(in srgb,var(--section-color, transparent) 20%,var(--border));cursor:grab;gap:8px}.plinks-section-header:active{cursor:grabbing}.plinks-section-header h3{margin:0;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-soft);flex:1;min-width:0}.plinks-section-handle{display:block;width:100%;padding:4px 0;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;cursor:grab;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:4px}.plinks-section-handle:hover{background:transparent}.plinks-section-handle:active{cursor:grabbing;transform:none}.plinks-section-header input{font-size:14px;font-weight:600;padding:4px 6px}.plinks-section-actions{position:relative;display:flex;gap:2px;flex-shrink:0}.plinks-section-color-wrap{position:static}.plinks-section-icon-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;color:var(--text-muted);border-radius:5px;opacity:.6;transition:opacity .1s,color .1s,background .1s}.plinks-section:hover .plinks-section-icon-btn{opacity:1}.plinks-section-icon-btn:hover{background:color-mix(in srgb,var(--section-color, var(--text)) 12%,transparent);color:var(--text)}.plinks-section-icon-btn-danger:hover{color:var(--danger)}.plinks-section-more{display:flex;opacity:.55}.plinks-section:hover .plinks-section-more,.plinks-section-more:focus-visible,.plinks-section-more[aria-expanded=true]{opacity:1}.plinks-section-body{display:flex;flex-direction:column;gap:6px;margin-top:8px;min-height:24px}.plinks-section-body.is-icons{flex-direction:row;flex-wrap:wrap;gap:8px;align-items:flex-start}.plinks-section-body.is-icons .plinks-add-bookmark{flex-basis:100%}.plinks-section-body.is-icons .plinks-add-bookmark-trigger{width:52px;height:52px;padding:0;font-size:22px;line-height:1;display:flex;align-items:center;justify-content:center;text-align:center}.plinks-card.is-icon{width:52px;height:52px;padding:6px;display:flex;align-items:center;justify-content:center}.plinks-card.is-icon:hover,.plinks-card.is-icon:focus-within{padding-right:6px}.plinks-card.is-icon .plinks-card-main{gap:0;align-items:center}.plinks-card.is-icon .plinks-favicon{margin-top:0;width:38px;height:38px}.plinks-card.is-icon .plinks-card-actions{top:auto;bottom:-10px;right:50%;transform:translate(50%);background:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow);padding:1px}.plinks-card.is-icon .plinks-card-icon-btn{width:28px;height:28px}.plinks-card.is-icon .plinks-card-icon-btn svg{width:14px;height:14px}.plinks-section-body.is-icons{row-gap:8px}.plinks-card.is-icon .plinks-card-actions{opacity:0;visibility:hidden;top:calc(100% - 4px);bottom:auto;z-index:3;background:var(--surface);padding:1px}.plinks-card.is-icon:hover .plinks-card-actions,.plinks-card.is-icon:focus-within .plinks-card-actions{opacity:1;visibility:visible}.plinks-card.is-icon:hover{z-index:4}.plinks-section-body.is-icons.is-editing{column-gap:20px;row-gap:52px}.plinks-section-body.is-icons.is-editing .plinks-card.is-icon .plinks-card-actions{opacity:1;visibility:visible;top:calc(100% + 4px)}@media (hover: none){.plinks-card.is-icon:hover .plinks-card-actions,.plinks-card.is-icon:focus-within .plinks-card-actions{opacity:0;visibility:hidden}.plinks-section-body.is-icons.is-editing .plinks-card.is-icon .plinks-card-actions{opacity:1;visibility:visible}}.plinks-section-body.is-icons.is-editing .plinks-card.is-icon .plinks-card-icon-btn{width:32px;height:32px}.plinks-edit-done{flex-basis:100%}.plinks-edit-done{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 14px;margin-top:4px;color:var(--accent);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md, 10px);font-size:13px;font-weight:600}.plinks-color-popover{position:absolute;top:calc(100% + 4px);right:0;z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);padding:8px;display:grid;grid-template-columns:repeat(7,22px);gap:6px}.plinks-color-swatch{width:22px;height:22px;border-radius:50%;border:1px solid var(--border);padding:0;font-size:11px;color:var(--text-muted);display:flex;align-items:center;justify-content:center}.plinks-color-swatch.active{box-shadow:0 0 0 2px var(--accent)}.plinks-move-popover{position:absolute;top:calc(100% + 4px);right:0;z-index:30;min-width:180px;max-height:260px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);padding:6px;display:flex;flex-direction:column;gap:2px}.plinks-move-popover[role=menu]{max-height:none}.plinks-move-popover-title{font-size:11px;color:var(--text-muted);padding:4px 8px 6px;text-transform:uppercase;letter-spacing:.04em}.plinks-move-popover-item{display:flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;text-align:left;padding:6px 8px;border-radius:6px;font-size:13px;color:var(--text);background:transparent}.plinks-move-popover-item:hover{background:var(--hover)}.plinks-move-popover-item:disabled{opacity:.5}.plinks-move-popover-icon{width:18px;text-align:center}.plinks-card{position:relative;background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:8px 10px;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none;transition:border-color .1s,background .1s,padding-right .15s ease,box-shadow .1s}.plinks-card a,.plinks-card img{-webkit-user-drag:none}.plinks-card:active{cursor:grabbing}.plinks-card:hover,.plinks-card:focus-within{border-color:color-mix(in srgb,var(--text) 15%,var(--border));box-shadow:0 1px 3px #0000000d}.plinks-card-main{display:flex;gap:10px;align-items:flex-start;text-decoration:none;color:inherit}.plinks-favicon{width:36px;height:36px;border-radius:6px;flex-shrink:0;margin-top:2px;background:var(--surface-2);object-fit:contain}.plinks-favicon-fallback{background:var(--border)}.plinks-favicon-monogram{display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#1a1a1f;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;line-height:1}.plinks-card-text{min-width:0;flex:1}.plinks-card-title{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plinks-card-domain{font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plinks-card-actions{position:absolute;top:0;right:0;bottom:0;display:flex;align-items:center;gap:2px;padding:0 4px 0 18px;background:linear-gradient(90deg,transparent,var(--card-bg) 30%);border-radius:0 8px 8px 0;opacity:0;visibility:hidden;transition:opacity .1s,visibility .1s}.plinks-card:hover .plinks-card-actions,.plinks-card:focus-within .plinks-card-actions{opacity:1;visibility:visible}.plinks-card-icon-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;color:var(--text-muted);border-radius:5px}.plinks-card-icon-btn:hover{background:var(--surface);color:var(--text)}.plinks-card-icon-btn-danger:hover{color:var(--danger)}@media (max-width: 720px){.plinks-card-actions{opacity:1;visibility:visible}.plinks-card:not(.is-icon){padding-right:96px}.plinks-card-actions{background:transparent;padding-left:4px}.plinks-section-icon-btn,.plinks-card-icon-btn,.plinks-mobile-menu-btn{width:44px;height:44px}.plinks-sidebar-item,.plinks-sidebar-name-btn{min-height:44px}.plinks-sidebar-primary-btn{width:44px;height:44px;opacity:1}.plinks-color-swatch{width:32px;height:32px}.plinks-color-popover{grid-template-columns:repeat(7,32px)}.plinks-move-popover-item{min-height:44px}input,select,textarea{font-size:16px}}.plinks-menu{position:absolute;top:28px;right:0;background:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow);z-index:20;display:flex;flex-direction:column;min-width:180px}.plinks-menu button{text-align:left;border-radius:0;padding:8px 12px;font-size:13px}.plinks-add-bookmark-trigger,.plinks-add-section{justify-content:flex-start;color:var(--text-soft);padding:8px 10px;border:1px dashed var(--border);border-radius:8px;width:100%}.plinks-sidebar-add-btn{justify-content:flex-start}.plinks-add-bookmark-trigger:hover,.plinks-add-section:hover{border-color:var(--accent);color:var(--text)}.plinks-add-bookmark{display:flex;flex-direction:column;gap:6px}.plinks-add-bookmark-actions{display:flex;justify-content:flex-end;gap:6px}.plinks-section-new{padding:12px}.plinks-section-overlay{width:370px;opacity:.95;cursor:grabbing}.plinks-drop-indicator{height:3px;background:var(--accent);border-radius:3px;pointer-events:none;animation:plinks-indicator-glow .6s ease-in-out infinite alternate}@keyframes plinks-indicator-glow{0%{opacity:.6;box-shadow:0 0 4px color-mix(in srgb,var(--accent) 30%,transparent)}to{opacity:1;box-shadow:0 0 8px color-mix(in srgb,var(--accent) 60%,transparent)}}@keyframes plinks-fade{0%{opacity:0}to{opacity:1}}@keyframes plinks-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.plinks-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:plinks-fade .15s ease-out;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px}.plinks-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);animation:plinks-pop .18s cubic-bezier(.2,.8,.2,1);box-shadow:var(--shadow);width:100%;max-width:480px;max-height:90vh;display:flex;flex-direction:column}.plinks-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.plinks-modal-header h2{margin:0;font-size:16px;font-weight:600}.plinks-modal-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:8px;color:var(--text-muted)}.plinks-modal-close:hover{color:var(--text);background:var(--surface-2)}@media (max-width: 720px){.plinks-modal-backdrop{align-items:flex-end;padding:0}.plinks-modal{max-width:none;max-height:92dvh;border-radius:16px 16px 0 0;border-bottom:0;padding-bottom:var(--safe-bottom)}.plinks-modal-close{width:44px;height:44px}}.plinks-modal-body{padding:16px 20px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.plinks-modal-body label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-muted)}.plinks-modal-footer{padding:12px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px}.plinks-loading,.plinks-error,.plinks-empty{padding:32px;color:var(--text-muted);text-align:center}.plinks-sidebar.collapsed{padding-left:0;padding-right:0;align-items:center}.plinks-sidebar.collapsed .plinks-sidebar-header{width:100%;display:flex;justify-content:center}.plinks-sidebar.collapsed .plinks-brand{justify-content:center}.plinks-sidebar.collapsed .plinks-sidebar-nav{width:100%;align-items:center}.plinks-sidebar.collapsed .plinks-sidebar-item{justify-content:center;padding:6px 0;border-left-color:transparent!important;width:100%}.plinks-sidebar.collapsed .plinks-sidebar-item.active{background:var(--surface-2)}.plinks-sidebar.collapsed .plinks-sidebar-icon-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;padding:0}.plinks-sidebar-settings{display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:8px 10px;color:var(--text-muted);border-radius:6px;width:100%;text-align:left;font-size:13px}.plinks-sidebar-settings:hover{color:var(--text);background:var(--surface-2)}.plinks-sidebar-settings-icon{font-size:15px;flex-shrink:0}.plinks-sidebar.collapsed .plinks-sidebar-settings{justify-content:center;padding:8px 0;width:100%}.plinks-sidebar-toggle{margin-top:auto;padding:8px;color:var(--text-muted);font-size:11px;border-radius:6px;align-self:flex-end;flex-shrink:0}.plinks-sidebar.collapsed .plinks-sidebar-toggle{align-self:center}.plinks-sidebar-toggle:hover{color:var(--text);background:var(--surface-2)}.plinks-sidebar-primary-btn{flex-shrink:0;padding:2px 5px;font-size:13px;color:var(--text-muted);opacity:0;transition:opacity .1s;line-height:1}.plinks-sidebar-item:hover .plinks-sidebar-primary-btn{opacity:1}.plinks-sidebar-primary-btn.is-primary{opacity:1;color:var(--accent)}.plinks-sidebar-primary-btn:hover{background:transparent;color:var(--accent)}.plinks-icon-edit{display:flex;flex-direction:column;gap:6px;margin:8px 0}.plinks-icon-edit-label{font-size:13px;font-weight:600;color:var(--text)}.plinks-icon-edit-row{display:flex;align-items:center;gap:12px;padding:8px;margin:-8px;border:2px dashed transparent;border-radius:12px;transition:border-color .15s,background .15s}.plinks-icon-edit-row.is-dragover{border-color:var(--accent);background:#8800ff0f}.plinks-icon-edit-row.is-dragover *{pointer-events:none}.plinks-icon-edit-preview{width:48px;height:48px;border-radius:8px;object-fit:contain;background:var(--surface-2);border:1px solid var(--border);flex-shrink:0}.plinks-icon-edit-placeholder{display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--text-muted)}.plinks-icon-edit-buttons{display:flex;flex-direction:column;gap:6px;flex:1}.plinks-icon-edit-hint{font-size:12px;color:var(--text-muted)}.plinks-icon-edit-error{font-size:13px;color:var(--danger);background:#dc262614;padding:8px 12px;border-radius:6px}.plinks-icon-gallery{display:flex;flex-direction:column;gap:8px;margin-top:4px}.plinks-icon-gallery-colors{display:flex;gap:8px}.plinks-icon-gallery-swatch{width:26px;height:26px;border-radius:8px;border:2px solid transparent;cursor:pointer;padding:0;display:grid;place-items:center}.plinks-icon-gallery-swatch-dot{width:10px;height:10px;border-radius:50%;background:currentColor}.plinks-icon-gallery-swatch.is-active{border-color:currentColor}.plinks-icon-gallery-search{width:100%;font-size:13px;padding:7px 10px}.plinks-icon-gallery-scroll{max-height:240px;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding:2px}.plinks-icon-gallery-cat{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding:4px 2px 2px}.plinks-icon-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px}.plinks-icon-gallery-item{padding:0;border:2px solid transparent;border-radius:10px;background:none;cursor:pointer;line-height:0}.plinks-icon-gallery-item img{width:100%;border-radius:8px;display:block}.plinks-icon-gallery-item:hover{border-color:var(--border)}.plinks-icon-gallery-item.is-active{border-color:var(--accent)}.plinks-icon-gallery-empty{font-size:13px;color:var(--text-muted);padding:8px 2px}.plinks-usage-badge{display:inline-flex;align-items:baseline;gap:3px;padding:4px 10px;border-radius:999px;background:var(--surface-2);color:var(--text-muted);font-size:12px;font-weight:500;border:1px solid var(--border);-webkit-user-select:none;user-select:none}.plinks-usage-count{font-variant-numeric:tabular-nums}.plinks-usage-sep{opacity:.4}.plinks-usage-limit{font-variant-numeric:tabular-nums}.plinks-usage-badge-warn{background:var(--warn-bg);color:var(--warn-text)}.plinks-usage-badge-danger{background:var(--danger-bg);color:var(--danger-text)}.plinks-update{position:fixed;left:50%;bottom:calc(var(--safe-bottom, 0px) + 20px);transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:12px;width:min(520px,calc(100vw - 32px));padding:12px 14px;border-radius:var(--radius-lg, 14px);background:var(--accent);color:#fff;box-shadow:var(--shadow);font-size:13px}.plinks-update-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.plinks-update-text span{opacity:.85;font-size:12px}.plinks-update-btn{flex-shrink:0;min-height:36px;padding:0 14px;background:#fff;color:var(--accent);border-radius:var(--radius-md, 10px);font-weight:600;font-size:13px}.plinks-update-later{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;color:#ffffffd9;border-radius:50%}.plinks-update-later:hover{background:#ffffff26;color:#fff}.plinks-toast{position:fixed;left:50%;bottom:calc(var(--safe-bottom, 0px) + 20px);transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:10px;max-width:min(520px,calc(100vw - 32px));padding:10px 14px;border-radius:10px;background:var(--text);color:var(--bg);font-size:13px;line-height:1.4;box-shadow:0 8px 24px #0000002e;cursor:pointer}.plinks-toast.is-error{background:#b42318;color:#fff}.plinks-toast svg{flex-shrink:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.plinks-confirm{position:absolute;top:calc(100% + 4px);right:0;z-index:40;min-width:240px;max-width:320px;padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);cursor:default;-webkit-user-select:none;user-select:none}.plinks-card .plinks-confirm{top:auto;bottom:calc(100% + 4px);right:4px}.plinks-confirm-text{font-size:13px;line-height:1.4;color:var(--text);margin-bottom:10px}.plinks-confirm-actions{display:flex;justify-content:flex-end;gap:6px}.plinks-confirm-actions button{padding:6px 12px;font-size:13px}.plinks-confirm-actions button.danger{background:#b42318;color:#fff}.plinks-confirm-actions button.danger:hover{background:#9a1c14}.plinks-confirm-actions button.secondary{background:var(--surface-2);border:1px solid var(--border)}.plinks-move-popover-item.is-danger{color:#b42318}.plinks-move-popover-item svg{width:14px;height:14px;flex-shrink:0}@keyframes plinks-pulse{0%,to{opacity:.5}50%{opacity:1}}.plinks-skeleton{display:flex;gap:16px;padding:24px 32px;align-items:flex-start}.plinks-skeleton-section{flex:1 1 300px;max-width:420px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--section-bg);animation:plinks-pulse 1.2s ease-in-out infinite}.plinks-skeleton-line{height:36px;margin-top:8px;border-radius:8px;background:var(--surface-2)}.plinks-skeleton-line.is-title{height:14px;width:45%;margin:4px 0 12px}.plinks-skeleton-line.is-short{width:70%}@media (max-width: 720px){.plinks-skeleton{flex-direction:column;padding:calc(var(--safe-top) + 56px) 16px 16px}.plinks-skeleton-section{width:100%;max-width:none}}.plinks-empty{display:flex;flex-direction:column;align-items:center;gap:8px;max-width:360px;margin:48px auto;color:var(--text-muted)}.plinks-empty svg{color:var(--accent);opacity:.8;margin-bottom:8px}.plinks-empty h2{margin:0;font-size:18px;color:var(--text)}.plinks-empty p{margin:0 0 8px}.plinks-page{max-width:640px;margin:0 auto;padding:32px 24px calc(var(--safe-bottom) + 32px)}.plinks-page h1{font-size:22px;font-weight:700;letter-spacing:-.02em;margin:0 0 16px;display:flex;align-items:center;gap:12px}.plinks-page h2{font-size:16px;font-weight:600;margin:0 0 8px}.plinks-callout-danger{padding:16px;border-radius:var(--radius-md);background:var(--danger-bg);color:var(--danger-text);margin-top:8px}.plinks-callout-danger p{margin:0 0 12px}button.danger{background:var(--danger);color:#fff;border-color:var(--danger)}button.danger:hover{filter:brightness(1.08)}.plinks-inline-check{display:inline-flex;align-items:center;gap:4px}
