:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans JP,sans-serif;color:#0f172a;background:#f7f7fb;font-synthesis:none;--bg: #f7f7fb;--surface: #ffffff;--surface-subtle: #f1f3f7;--surface-raised: #ffffff;--text: #0f172a;--muted: #475569;--border: #e5e7eb;--border-strong: #cbd0dd;--accent: #0074f3;--accent-strong: #0062cf;--accent-soft: #eef5ff;--gradient-yellow: linear-gradient(135deg, #f65700 0%, #ffc900 100%);--gradient-red: linear-gradient(135deg, #c11a30 0%, #fd4611 100%);--gradient-blue: linear-gradient(135deg, #0074f3 0%, #01bac7 100%);--text-on-brand: #2b1600;--grid-color: rgba(246, 87, 0, .03);--danger: #c11a30;--success: #25754a;--shadow: 0 16px 36px rgba(15, 23, 42, .12)}:root[data-theme=dark]{color-scheme:dark;--bg: #0b0c11;--surface: #14151a;--surface-subtle: #1d1e24;--surface-raised: #14151a;--text: #f1f5f9;--muted: #94a3b8;--border: #2a2b35;--border-strong: #3f4152;--accent: #01bac7;--accent-strong: #4ed4dd;--accent-soft: #102d37;--text-on-brand: #ffffff;--grid-color: rgba(255, 255, 255, .04);--danger: #ff7a7a;--success: #79d3a2;--shadow: 0 16px 36px rgba(0, 0, 0, .36)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--text)}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px}svg{width:20px;height:20px;stroke-width:1.8}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;background:var(--surface);border-right:1px solid var(--border);padding:24px 18px 20px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:10px;padding:0 10px 26px;font-size:21px;color:var(--text)}.brand-home{min-height:44px;padding:0;border:0;background:none;display:flex;align-items:center;gap:10px;color:inherit;cursor:pointer}.brand-home:hover strong,.mobile-brand:hover{text-decoration:underline;text-underline-offset:4px}.brand-mark{width:34px;height:34px;object-fit:contain}.close-menu{display:none;margin-left:auto}nav{display:flex;flex-direction:column;gap:5px}.nav-item{width:100%;min-height:48px;padding:0 12px;border:0;border-radius:4px;background:none;display:flex;align-items:center;gap:13px;color:var(--muted);cursor:pointer;text-align:left}.nav-item:hover{background:var(--surface-subtle);color:var(--text)}.nav-item.active{background:var(--accent-soft);color:var(--accent-strong);font-weight:700}.nav-divider{margin-top:20px;padding-top:17px;min-height:65px;border-top:1px solid var(--border);border-radius:0}.theme-quick{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;gap:2px;padding:3px;border:1px solid var(--border-strong);border-radius:4px;background:var(--surface)}.theme-quick button{min-height:40px;border:0;border-radius:2px;background:none;display:flex;align-items:center;justify-content:center;gap:7px;color:var(--muted);cursor:pointer;font-size:13px}.theme-quick button.active{background:var(--accent-soft);color:var(--accent-strong);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 48%,transparent)}.theme-quick svg{width:17px}main{min-width:0}.topbar{height:96px;display:flex;align-items:center;justify-content:flex-end;padding:0 34px;border-bottom:1px solid var(--border);background-color:var(--surface);background-image:linear-gradient(var(--grid-color) 1px,transparent 1px),linear-gradient(90deg,var(--grid-color) 1px,transparent 1px);background-size:8px 8px}.header-actions{display:flex;gap:10px;align-items:center}.primary-button,.secondary-button{min-height:44px;border-radius:4px;padding:0 17px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;cursor:pointer;font-weight:700}.primary-button{background:var(--gradient-yellow);color:var(--text-on-brand)}.primary-button:hover{filter:saturate(1.08) brightness(.98)}.secondary-button{background:var(--surface);border-color:var(--border);color:var(--text)}.secondary-button:hover{border-color:var(--accent)}.icon-button{width:44px;height:44px;border:1px solid var(--border-strong);border-radius:4px;background:var(--surface);display:inline-grid;place-items:center;cursor:pointer}.close-menu,.menu-button,.mobile-brand{display:none}.page-content{width:min(1180px,100%);margin:0 auto;padding:42px 48px 80px}.storage-error{margin:0 0 22px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--danger) 42%,transparent);border-radius:4px;background:color-mix(in srgb,var(--danger) 8%,var(--surface));display:flex;align-items:center;justify-content:space-between;gap:16px}.storage-error span{display:flex;flex-direction:column;gap:4px;color:var(--muted)}.storage-error strong{color:var(--danger)}.home-view{max-width:1080px;margin:0 auto}.launcher-section{max-width:840px;margin:14px auto 66px;text-align:center}.launcher-section h1{margin:0 0 22px;font-size:clamp(30px,4vw,42px);letter-spacing:-.035em}.launcher-wrap{position:relative;height:72px;border:2px solid var(--accent);border-radius:4px;background:var(--surface-raised);display:flex;align-items:center;padding:0 20px;gap:13px;text-align:left}.launcher-wrap>svg{width:24px;height:24px;color:var(--muted)}.launcher-wrap input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--text);font-size:18px}.launcher-wrap input::placeholder{color:#92939a}kbd{min-width:30px;height:30px;padding:0 8px;display:inline-grid;place-items:center;border:1px solid var(--border-strong);border-radius:4px;background:var(--surface-subtle);color:var(--muted);font-family:inherit;box-shadow:0 1px 0 var(--border)}.focus-hint{color:var(--muted);white-space:nowrap}.keyboard-hint{color:var(--muted);font-size:13px;margin-top:13px}.keyboard-hint kbd{min-width:27px;height:26px;margin-right:3px;font-size:12px}.search-results{position:absolute;z-index:10;top:calc(100% + 8px);left:0;right:0;background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:4px;padding:6px;box-shadow:var(--shadow);max-height:430px;overflow:auto}.search-results>button{width:100%;min-height:60px;border:0;border-radius:2px;padding:8px 10px;background:transparent;display:grid;grid-template-columns:40px 1fr 28px;align-items:center;gap:11px;text-align:left;cursor:pointer}.search-results>button:hover,.search-results>button.selected{background:var(--accent-soft)}.search-results button>span:not(.letter-icon){display:flex;flex-direction:column;gap:3px;min-width:0}.search-results small,.bookmark-main small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-results button>svg{color:var(--muted);justify-self:end}.search-results .search-suggestions-start,.search-results .web-search-result{margin-top:5px;border-top:1px solid var(--border)}.search-provider-icon{width:40px;height:40px;display:grid!important;place-items:center;border-radius:50%;background:var(--accent-soft);color:var(--accent-strong)}.search-provider-icon svg{width:19px;height:19px}.no-results{padding:24px;display:flex;flex-direction:column;gap:7px;text-align:center}.no-results span{color:var(--muted)}.no-results button,.text-button,.section-heading button,.center-link{border:0;background:none;color:var(--accent-strong);cursor:pointer}.home-section{margin-bottom:46px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.section-heading h2{margin:0;display:flex;align-items:center;gap:12px;font-size:21px}.section-heading h2:before{width:9px;height:9px;content:"";flex:0 0 9px;background:var(--gradient-red);border-radius:1px}.section-heading button{display:flex;align-items:center;gap:5px}.section-heading svg{width:17px}.favorite-heading-actions{display:flex;align-items:center;gap:14px}.favorite-heading-actions button.active{color:var(--accent-strong);font-weight:750}.favorite-grid{display:grid;grid-template-columns:repeat(8,minmax(74px,1fr));gap:15px}.favorite-tile{position:relative;min-width:0;border-radius:4px}.favorite-grid.is-sorting .favorite-tile{outline:1px dashed var(--border-strong);cursor:grab}.favorite-tile.is-dragging,.bookmark-row.is-dragging{opacity:.45}.favorite-link,.favorite-grid>.add-tile{width:100%;min-height:96px;border:0;background:transparent;border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;cursor:pointer}.favorite-link:hover,.favorite-grid>.add-tile:hover{background:var(--surface-subtle)}.favorite-link>span:last-child,.favorite-grid>.add-tile>span:last-child{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.favorite-sort-actions{position:absolute;inset:3px 3px auto;min-height:30px;display:flex;align-items:center;justify-content:center;gap:1px;color:var(--muted);pointer-events:none}.favorite-sort-actions>svg{width:15px}.favorite-sort-actions button{width:27px;height:27px;padding:0;border:0;border-radius:4px;background:var(--surface-raised);color:var(--muted);display:grid;place-items:center;pointer-events:auto;cursor:pointer}.favorite-sort-actions button:disabled{opacity:.25;cursor:default}.favorite-sort-actions button svg{width:14px}.letter-icon{position:relative;width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--border-strong);border-radius:4px;background:var(--surface-raised);color:var(--accent-strong);font-size:18px;font-weight:800}.letter-icon img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;padding:8px;object-fit:contain;background:var(--surface-raised)}.add-tile .letter-icon{display:none}.add-tile svg{width:31px;height:31px;color:var(--muted)}.category-rows{border-top:1px solid var(--border)}.category-rows>button{width:100%;min-height:66px;padding:0 8px;display:grid;grid-template-columns:40px 130px 1fr 24px;gap:12px;align-items:center;text-align:left;border:0;border-bottom:1px solid var(--border);background:var(--surface);cursor:pointer}.category-rows>button:hover{background:var(--surface-subtle)}.category-dot{width:35px;height:35px;display:grid;place-items:center;border-radius:4px;background:var(--accent-soft);color:var(--accent-strong)}.category-dot svg{width:18px}.category-links{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.center-link{min-height:48px;margin:12px auto 0;display:flex;align-items:center;gap:5px}.center-link svg{width:17px}.content-section.narrow{max-width:820px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px}.page-heading h1{margin:3px 0 6px;font-size:clamp(28px,4vw,38px);letter-spacing:-.035em}.page-heading p{margin:0;color:var(--muted)}.page-heading .eyebrow,.eyebrow{color:var(--accent-strong);text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.12em}.filters{display:grid;grid-template-columns:minmax(240px,1fr) 190px 160px;gap:10px;margin-bottom:20px}.filters label{min-height:44px;display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--border);border-radius:4px;background:var(--surface)}.filters label input{width:100%;border:0;outline:0;background:none;color:var(--text)}.filters select{min-height:44px;padding:0 12px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text)}.bookmark-table{border-top:1px solid var(--border)}.table-head{min-height:42px;display:grid;grid-template-columns:1.3fr .8fr 120px;padding:0 8px 0 78px;gap:12px;align-items:center;color:var(--muted);font-size:12px;font-weight:700}.bookmark-row{min-height:78px;display:grid;grid-template-columns:66px minmax(250px,1.3fr) minmax(180px,.8fr) 120px;gap:10px;align-items:center;border-bottom:1px solid var(--border)}.reorder-actions{display:flex;align-items:center;color:var(--muted)}.reorder-actions button{width:24px;height:32px;padding:0;border:0;border-radius:6px;background:none;color:var(--muted);display:grid;place-items:center;cursor:pointer}.reorder-actions .drag-handle{cursor:grab;touch-action:none}.reorder-actions .drag-handle:active{cursor:grabbing}.reorder-actions button:hover{background:var(--surface-subtle);color:var(--text)}.reorder-actions button:disabled{opacity:.22;cursor:default}.reorder-actions button svg{width:15px}.bookmark-main{min-width:0;border:0;background:none;display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer}.bookmark-main>span:not(.letter-icon){min-width:0;display:flex;flex-direction:column;gap:4px}.bookmark-main .letter-icon{width:42px;height:42px;flex-basis:42px;font-size:16px}.bookmark-meta{min-width:0;display:flex;align-items:center;gap:6px;overflow:hidden}.bookmark-meta span,.bookmark-meta small{border-radius:4px;padding:4px 8px;background:var(--surface-subtle);color:var(--muted);white-space:nowrap;font-size:12px}.row-actions{display:flex;justify-content:flex-end;gap:2px}.row-actions button{width:36px;height:36px;border:0;border-radius:4px;background:none;display:grid;place-items:center;color:var(--muted);cursor:pointer}.row-actions button:hover{background:var(--surface-subtle);color:var(--text)}.row-actions button.is-favorite{color:#d49c19}.row-actions button.danger:hover{color:var(--danger)}.row-actions svg{width:17px}.group-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.group-grid button{min-height:78px;display:grid;grid-template-columns:48px 1fr 24px;align-items:center;gap:13px;padding:13px;border:1px solid var(--border);border-radius:4px;background:var(--surface);text-align:left;cursor:pointer}.group-grid button:hover{border-color:var(--accent)}.group-grid button>span:nth-child(2){display:flex;flex-direction:column;gap:4px}.group-grid small{color:var(--muted)}.group-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:4px;background:var(--accent-soft);color:var(--accent-strong)}.tone-1{background:#eaf5eb;color:#317343}.tone-2{background:#f5eaf6;color:#873797}.tone-3{background:#fff0e4;color:#a75419}.tone-4{background:#e7f3f6;color:#267083}:root[data-theme=dark] .tone-1,:root[data-theme=dark] .tone-2,:root[data-theme=dark] .tone-3,:root[data-theme=dark] .tone-4{background:var(--surface-subtle);color:var(--accent)}.empty-state{min-height:300px;padding:42px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px dashed var(--border-strong);border-radius:4px;background:color-mix(in srgb,var(--surface) 62%,transparent)}.empty-state.compact{min-height:150px;padding:25px 20px}.empty-state .empty-icon{width:50px;height:50px;margin-bottom:14px;display:grid;place-items:center;border-radius:4px;background:var(--gradient-blue);color:#fff}.empty-state p{max-width:430px;margin:6px 0 16px;color:var(--muted)}.empty-state.compact .empty-icon{display:none}.loading-view{min-height:460px;display:flex;flex-direction:column;gap:18px;justify-content:center}.loading-view div{height:68px;border-radius:4px;background:linear-gradient(90deg,var(--surface-subtle),var(--surface-raised),var(--surface-subtle));background-size:200% 100%;animation:loading-shimmer 1.4s ease-in-out infinite}.loading-view div:nth-child(2){width:72%}.loading-view div:nth-child(3){width:88%}.settings-card,.setting-group,.bookmarklet-card{margin-bottom:16px;padding:23px;border:1px solid var(--border);border-radius:4px;background:var(--surface);display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:17px}.settings-card h2,.setting-group h2,.bookmarklet-card h2{margin:0 0 6px;font-size:17px}.settings-card p,.setting-group p,.bookmarklet-card p{margin:0;color:var(--muted);line-height:1.6}.card-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:4px;background:var(--accent-soft);color:var(--accent-strong)}.file-button input{display:none}.export-actions{display:flex;gap:8px}.import-review{margin:16px 0;padding:24px;border:2px solid var(--accent);border-radius:4px;background:var(--surface-raised)}.import-review h2{margin-top:0}.import-review>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.import-review>div span{padding:13px;border-radius:4px;background:var(--surface-subtle);display:flex;flex-direction:column;color:var(--muted)}.import-review>div strong{color:var(--text);font-size:24px}.import-review footer,.bookmark-form footer{margin-top:20px;display:flex;justify-content:flex-end;gap:9px}.setting-group{grid-template-columns:1fr auto}.segmented{display:flex;padding:3px;gap:2px;border:1px solid var(--border-strong);border-radius:4px;background:var(--bg)}.segmented button{min-height:37px;border:0;border-radius:2px;padding:0 11px;background:none;color:var(--muted);cursor:pointer}.segmented button.active{background:var(--surface-raised);color:var(--accent-strong);box-shadow:inset 0 0 0 1px var(--border)}.bookmarklet-card{grid-template-columns:48px 1fr;align-items:start}.bookmarklet-card .primary-button{margin-top:16px}.text-button{margin-left:8px;min-height:44px}.modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;justify-content:flex-end}.modal-layer.centered{align-items:center;justify-content:center;padding:18px}.modal-scrim{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#15161b75;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.bookmark-form{position:relative;width:min(480px,100%);height:100%;padding:30px;overflow:auto;background:var(--surface-raised);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:19px;animation:slide-in .2s ease-out}.delete-dialog{position:relative;width:min(440px,100%);padding:26px;border-radius:4px;background:var(--surface-raised);box-shadow:var(--shadow)}.delete-dialog h1{margin:0 0 10px;font-size:22px}.delete-dialog p{margin:0;color:var(--muted);line-height:1.65}.delete-dialog footer{margin-top:24px;display:flex;justify-content:flex-end;gap:9px}.danger-button{min-height:44px;padding:0 17px;border:0;border-radius:4px;background:var(--danger);color:#fff;font-weight:700;cursor:pointer}.danger-button:disabled{opacity:.58;cursor:wait}.bookmark-form header{display:flex;justify-content:space-between;align-items:flex-start}.bookmark-form h1{margin:2px 0 0;font-size:29px}.bookmark-form label:not(.check-row){display:flex;flex-wrap:wrap;align-items:baseline;gap:7px;font-weight:650}.bookmark-form label>span,.bookmark-form label>small{color:var(--muted);font-size:12px;font-weight:500}.bookmark-form label input:not([type=checkbox]){width:100%;min-height:48px;margin-top:7px;padding:0 13px;border:1px solid var(--border-strong);border-radius:4px;background:var(--surface);color:var(--text)}.check-row{min-height:52px;display:flex;align-items:center;gap:9px;cursor:pointer}.check-row input{width:20px;height:20px;accent-color:var(--accent)}.check-row svg{width:18px;color:#d49c19}.bookmark-form footer{margin-top:auto}.form-error{padding:12px 14px;border:1px solid color-mix(in srgb,var(--danger) 40%,transparent);border-radius:4px;background:color-mix(in srgb,var(--danger) 9%,transparent);color:var(--danger)}.toast{position:fixed;z-index:70;left:50%;bottom:28px;transform:translate(-50%);min-height:48px;padding:0 17px;border-radius:4px;background:#202228;color:#fff;box-shadow:var(--shadow);display:flex;align-items:center;gap:9px}.toast svg{width:18px;color:#82ddb0}.scrim{display:none}@keyframes slide-in{0%{transform:translate(24px);opacity:.6}}@keyframes loading-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:1100px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.page-content{padding-inline:30px}.favorite-grid{grid-template-columns:repeat(6,1fr)}.category-rows>button{grid-template-columns:40px 110px 1fr 24px}.bookmark-row{grid-template-columns:62px minmax(220px,1.3fr) minmax(130px,.7fr) 116px}}@media(max-width:767px){.app-shell{display:block}.sidebar{position:fixed;left:0;transform:translate(-105%);width:min(310px,88vw);transition:transform .2s ease-out}.sidebar.is-open{transform:none}.close-menu{display:grid}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:15;border:0;background:#15161b6b}.topbar{height:68px;padding:0 16px;justify-content:space-between;position:sticky;top:0;z-index:12}.menu-button{display:grid}.mobile-brand{min-height:44px;padding:0 8px;border:0;background:none;display:flex;align-items:center;gap:8px;color:var(--text);cursor:pointer}.mobile-brand img{width:28px;height:28px;object-fit:contain}.mobile-brand strong{font-size:18px}.header-actions .primary-button{width:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;gap:0;font-size:0}.header-actions .primary-button svg{width:21px}.header-actions .icon-button{display:none}.page-content{padding:29px 16px 60px}.launcher-section{margin:2px auto 42px}.launcher-section h1{text-align:left;font-size:29px;margin-bottom:17px}.launcher-wrap{height:59px;padding-inline:14px}.launcher-wrap input{font-size:16px}.focus-hint,.launcher-wrap>kbd,.keyboard-hint{display:none}.favorite-grid{grid-template-columns:repeat(4,1fr);gap:7px}.favorite-link,.favorite-grid>.add-tile{min-height:86px}.letter-icon{width:42px;height:42px;flex-basis:42px}.category-rows>button{grid-template-columns:37px 1fr 22px;min-height:62px}.category-links{display:none}.page-heading{align-items:flex-start}.page-heading .primary-button{width:44px;padding:0;font-size:0}.filters{grid-template-columns:1fr 1fr}.filters label{grid-column:1 / -1}.filters select{min-width:0;width:100%}.table-head{display:none}.bookmark-row{grid-template-columns:minmax(0,1fr) auto;padding:11px 0;min-height:76px}.reorder-actions,.bookmark-meta{display:none}.bookmark-main{min-width:0}.row-actions button:first-child{display:none}.row-actions{gap:0}.group-grid{grid-template-columns:1fr}.settings-card,.bookmarklet-card{grid-template-columns:42px 1fr;align-items:start;padding:18px}.settings-card>:last-child,.export-actions{grid-column:2;justify-self:start}.setting-group{display:flex;flex-direction:column;align-items:stretch}.segmented{overflow-x:auto}.segmented button{flex:1 0 auto}.bookmark-form{padding:23px 18px}}@media(max-width:420px){.favorite-grid{grid-template-columns:repeat(3,1fr)}.bookmark-main .letter-icon{width:38px;height:38px;flex-basis:38px}.row-actions button{width:34px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
