*{box-sizing:border-box}.anime-admin-page,.anime-detail-page{min-height:100vh;padding:28px;background:#f4f6fb;color:#182033}.anime-admin-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.anime-admin-header h1{margin:10px 0 4px}.anime-admin-header button,.anime-edit-row button,.anime-note-editor button,.anime-toolbar button{border:0;border-radius:8px;padding:10px 14px;background:#24324a;color:#fff;cursor:pointer}.anime-admin-header button:disabled{opacity:.55}.anime-toolbar{display:flex;gap:10px;flex-wrap:wrap;padding:16px;background:#fff;border-radius:14px;margin-bottom:20px}.anime-edit-row input,.anime-edit-row select,.anime-note-form select,.anime-note-form textarea,.anime-toolbar input,.anime-toolbar select{border:1px solid #ccd3df;border-radius:8px;padding:10px}.anime-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}.anime-card{display:grid;grid-template-columns:105px 1fr;gap:14px;padding:14px;background:#fff;border-radius:14px;box-shadow:0 8px 22px rgba(31,45,70,.08)}.anime-card h2{font-size:18px;margin:0 0 4px;cursor:pointer}.anime-cover{height:150px;padding:0;border:0;background:#e4e8ef;border-radius:9px;overflow:hidden}.anime-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.anime-empty{text-align:center;padding:70px}.anime-pager{display:flex;justify-content:center;gap:14px;align-items:center;margin-top:24px}.anime-subject-hero{display:grid;grid-template-columns:220px 1fr;gap:24px;background:#fff;border-radius:14px;padding:20px}.anime-subject-hero>img{width:100%;border-radius:10px}.anime-edit-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.anime-note-editor,.episode-list{margin-top:20px;background:#fff;border-radius:14px;padding:18px}.anime-note-form{display:grid;grid-template-columns:120px 1fr auto auto;gap:10px}.anime-note-form textarea{min-height:90px}.anime-note{border-top:1px solid #e1e5ec;padding:14px 0}.anime-note small{margin-left:10px;color:#778196}.anime-note p{white-space:pre-wrap}.anime-note button{margin-right:8px;padding:6px 10px}.episode-row{border-top:1px solid #dfe4ec}.episode-summary{width:100%;display:flex;justify-content:space-between;gap:12px;padding:14px 4px;border:0;background:transparent;text-align:left}.episode-editor{padding:0 12px 16px;background:#f7f8fb}.episode-editor .anime-note-editor{box-shadow:none;padding:12px}.anime-admin-page button:focus-visible,.anime-admin-page input:focus-visible,.anime-detail-page button:focus-visible,.anime-detail-page textarea:focus-visible{outline:3px solid #7f9cff;outline-offset:2px}.anime-muted,.anime-original-name{color:#778196}.anime-metadata-section{margin-top:20px;background:#fff;border-radius:14px;padding:18px}.anime-summary-editor{width:100%;min-height:130px;border:1px solid #ccd3df;border-radius:9px;padding:12px;resize:vertical;line-height:1.7}.anime-tag-list{display:flex;flex-wrap:wrap;gap:9px}.anime-tag{padding:6px 11px;border-radius:999px;background:#eaf0ff;color:#34549a;font-size:13px}.anime-link-button{margin-top:12px;border:0;background:transparent;color:#34549a;cursor:pointer}.anime-character-list{display:flex;overflow-x:auto;gap:16px;padding:4px 2px 14px;scrollbar-color:#aab4c6 transparent}.anime-character-card{flex:0 0 150px;border:1px solid #e1e5ec;border-radius:12px;padding:10px;background:#fafbfe}.anime-character-card h3{margin:9px 0 4px;font-size:15px}.anime-character-card p,.anime-character-card small{margin:3px 0;color:#667085}.anime-character-image{height:190px;border-radius:9px;overflow:hidden;background:#e8ebf1;display:flex;align-items:center;justify-content:center;color:#8a93a3}.anime-character-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}@media(max-width:760px){.anime-admin-page,.anime-detail-page{padding:16px}.anime-admin-header,.episode-summary{flex-direction:column}.anime-subject-hero{grid-template-columns:1fr}.anime-subject-hero>img{max-width:220px}.anime-note-form{grid-template-columns:1fr}.anime-card{grid-template-columns:90px 1fr}.anime-character-card{flex-basis:132px}.anime-character-image{height:168px}}.bookmark-page{position:relative;min-height:100vh;padding:48px 32px 80px;background-color:#17132d;background-position:50%;background-size:cover;background-attachment:fixed}.bookmark-shade{position:absolute;inset:0;background:linear-gradient(135deg,rgba(10,13,37,.88),rgba(35,21,61,.78))}.bookmark-shell{position:relative;z-index:1;width:min(1180px,100%);margin:0 auto}.bookmark-header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:28px}.bookmark-header a,.bookmark-header p,.bookmark-header span{color:hsla(0,0%,100%,.66)}.bookmark-header p{margin:22px 0 6px;color:#ff9fdc;font-size:13px;letter-spacing:.18em}.bookmark-header h1{margin:0 0 8px;font-size:clamp(34px,5vw,58px)}.bookmark-header>strong{padding:12px 18px;border:1px solid hsla(0,0%,100%,.15);border-radius:999px;background:rgba(45,34,82,.7);white-space:nowrap}.bookmark-search{display:flex;align-items:center;gap:12px;margin-bottom:22px;padding:0 18px;border:1px solid hsla(0,0%,100%,.16);border-radius:16px;background:rgba(34,28,70,.7);backdrop-filter:blur(16px)}.bookmark-search input{width:100%;padding:16px 0;border:0;outline:0;color:#fff;background:transparent;font:inherit}.bookmark-search input::-moz-placeholder{color:hsla(0,0%,100%,.48)}.bookmark-search input::placeholder{color:hsla(0,0%,100%,.48)}.bookmark-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px}.bookmark-categories{display:flex;flex-direction:column;align-self:start;gap:8px;padding:12px;border:1px solid hsla(0,0%,100%,.13);border-radius:18px;background:rgba(31,26,63,.72);backdrop-filter:blur(16px)}.bookmark-categories button{display:flex;justify-content:space-between;gap:10px;padding:12px 14px;border:0;border-radius:12px;color:hsla(0,0%,100%,.72);background:transparent;cursor:pointer;text-align:left}.bookmark-categories button.active,.bookmark-categories button:hover{color:#fff;background:linear-gradient(135deg,rgba(255,105,190,.33),rgba(130,100,255,.32))}.bookmark-categories em{color:hsla(0,0%,100%,.48);font-style:normal}.bookmark-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.bookmark-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:112px;padding:18px;border:1px solid hsla(0,0%,100%,.13);border-radius:18px;background:rgba(39,31,77,.7);box-shadow:0 18px 44px rgba(8,7,28,.2);backdrop-filter:blur(16px);transition:transform .2s ease,border-color .2s ease,background .2s ease}.bookmark-card:hover{transform:translateY(-3px);border-color:rgba(255,148,215,.55);background:rgba(55,41,98,.82)}.bookmark-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;color:#ff9fdc;background:hsla(0,0%,100%,.08);overflow:hidden}.bookmark-icon img{width:28px;height:28px;-o-object-fit:contain;object-fit:contain}.bookmark-card-copy,.bookmark-card-copy em,.bookmark-card-copy small,.bookmark-card-copy strong{display:block;min-width:0}.bookmark-card-copy small{margin:5px 0 8px;overflow:hidden;color:hsla(0,0%,100%,.68);text-overflow:ellipsis;white-space:nowrap}.bookmark-card-copy em{color:hsla(0,0%,100%,.4);font-size:12px;font-style:normal}.bookmark-arrow{color:#ff9fdc;font-size:20px}.bookmark-state{padding:42px 20px;border:1px dashed hsla(0,0%,100%,.2);border-radius:18px;color:hsla(0,0%,100%,.62);text-align:center}.bookmark-state button{margin-left:10px;padding:8px 12px;border:0;border-radius:10px;cursor:pointer}@media (max-width:760px){.bookmark-page{padding:26px 14px 52px}.bookmark-header{align-items:flex-start;flex-direction:column}.bookmark-layout{grid-template-columns:1fr}.bookmark-categories{flex-direction:row;overflow-x:auto}.bookmark-categories button{flex:0 0 auto}.bookmark-grid{grid-template-columns:1fr}}#app,body,html{width:100%;min-height:100%;margin:0}body{font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif;color:#fff;background:#151225}a{color:inherit;text-decoration:none}.home-page{position:relative;min-height:100vh;overflow:hidden;background-position:50%;background-size:cover;background-repeat:no-repeat}.page-shade{position:absolute;inset:0;background:radial-gradient(circle at 46% 52%,rgba(255,197,117,.34),transparent 10%),linear-gradient(90deg,rgba(13,15,39,.18),rgba(21,18,52,.44) 48%,rgba(16,16,42,.62)),linear-gradient(180deg,rgba(12,14,37,.2),rgba(15,12,31,.84));pointer-events:none}.home-content,.home-footer,.home-header{position:relative;z-index:1}.home-header{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr);align-items:center;gap:32px;width:min(1800px,calc(100% - 88px));height:112px;margin:0 auto}.brand,.glass-card,.site-card,.social-row a,.time-card{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:14px;width:-moz-max-content;width:max-content}.brand-avatar{width:58px;height:58px;border-radius:50%;border:2px solid rgba(201,158,255,.8);box-shadow:0 0 0 3px rgba(83,188,255,.25),0 8px 28px rgba(183,122,255,.36);-o-object-fit:cover;object-fit:cover}.brand-text{font-family:Georgia,Times New Roman,serif;font-size:32px;font-weight:800;font-style:italic;text-shadow:0 4px 18px hsla(0,0%,100%,.3),0 0 20px rgba(154,123,255,.18)}.time-card{min-width:250px;padding:16px 22px;border:1px solid hsla(0,0%,100%,.2);border-radius:18px;background:rgba(30,27,70,.36);box-shadow:inset 0 0 28px hsla(0,0%,100%,.04)}.header-tools{justify-self:end;display:inline-flex;align-items:center;gap:12px}.date-line,.time-line{display:flex;align-items:center;justify-content:space-between;gap:12px}.date-line{font-size:14px;font-weight:700;color:hsla(0,0%,100%,.86)}.time-line strong{margin-top:6px;font-size:25px;letter-spacing:0}.home-content{display:grid;grid-template-columns:minmax(340px,1fr) minmax(520px,820px);align-items:center;gap:56px;width:min(1500px,calc(100% - 112px));min-height:calc(100vh - 136px);margin:0 auto;padding:0 0 54px}.hero-intro{max-width:650px}.hello{margin:0 0 18px;font-family:Georgia,Times New Roman,serif;font-size:clamp(36px,3.6vw,52px);font-weight:700;font-style:italic;line-height:1;color:#ffb7df;text-shadow:0 6px 28px rgba(255,118,201,.5)}.hero-intro h1{display:flex;flex-direction:column;gap:10px;margin:0;font-size:clamp(30px,3.15vw,46px);line-height:1.18;letter-spacing:0;text-shadow:0 10px 34px rgba(0,0,0,.32)}.hero-intro h1 strong{color:#ffa6dc}.social-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.social-row a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:rgba(255,183,209,.24);box-shadow:0 12px 26px rgba(29,16,54,.28);transition:transform .2s ease,background .2s ease}.site-card:hover,.social-row a:hover{transform:translateY(-4px);background:rgba(255,185,233,.32)}.right-panel{display:flex;flex-direction:column;gap:22px}.info-cards{display:grid;grid-template-columns:1.08fr 1fr;gap:18px}.glass-card{min-height:178px;border:1px solid hsla(0,0%,100%,.14);border-radius:18px;background:rgba(44,33,78,.42);box-shadow:inset 0 0 50px rgba(255,193,233,.05),0 22px 50px rgba(14,12,31,.22)}.glass-card h2,.site-section h2{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:19px;color:#ffb5e2}.quote-card{position:relative;padding:24px 30px 20px}.quote-content{margin:22px 0 12px;font-size:18px;font-weight:700;line-height:1.8}.quote-source{margin:0;font-size:16px;font-weight:700;color:hsla(0,0%,100%,.88)}.card-moon{position:absolute;right:46px;bottom:30px;color:#ffd36f;font-size:50px;filter:drop-shadow(0 0 16px rgba(255,211,111,.52))}.weather-card{padding:24px 30px 20px}.weather-location{display:flex;align-items:center;gap:7px;margin:8px 0 0;color:hsla(0,0%,100%,.72);font-size:13px}.weather-status-dot{width:7px;height:7px;border-radius:50%;background:#7ce8c3;box-shadow:0 0 10px rgba(124,232,195,.7)}.weather-location.is-locating .weather-status-dot{background:#ffd36f;animation:weather-pulse 1.2s ease-in-out infinite}.weather-location.is-fallback .weather-status-dot{background:hsla(0,0%,100%,.42);box-shadow:none}@keyframes weather-pulse{50%{opacity:.35}}.weather-body{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:12px}.temperature{margin:0 0 10px;font-size:46px;font-weight:800;line-height:1}.temperature span{font-size:26px}.weather-body p:not(.temperature){margin:6px 0;color:hsla(0,0%,100%,.9)}.weather-source{display:inline-block;margin-top:5px;color:hsla(0,0%,100%,.5);font-size:11px;text-decoration:none}.weather-source:hover{color:#ffb5e2}.weather-cloud{display:grid;place-items:center;width:92px;height:92px;border-radius:50%;color:#fface4;font-size:56px;background:rgba(248,176,231,.14);box-shadow:0 0 36px rgba(255,174,235,.28)}.site-section h2{margin-bottom:12px}.site-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:10px;border-radius:18px;background:rgba(29,24,58,.34);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.site-card{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:122px;padding:14px 12px;border:1px solid hsla(0,0%,100%,.08);border-radius:14px;background:rgba(56,43,88,.54);box-shadow:inset 0 0 38px hsla(0,0%,100%,.03);text-align:center;transition:transform .2s ease,background .2s ease}.site-card .app-icon{margin-bottom:10px;color:#ff9bd7;font-size:32px;text-shadow:0 0 24px rgba(255,157,217,.46)}.site-card strong{margin-bottom:7px;font-size:19px}.site-card span{color:hsla(0,0%,100%,.78);font-size:15px}.app-icon{display:inline-flex;align-items:center;justify-content:center;min-width:1em;line-height:1;font-weight:700}.home-footer{position:absolute;left:0;right:0;bottom:18px;text-align:center;font-size:16px;font-weight:700;color:hsla(0,0%,100%,.9);text-shadow:0 3px 18px rgba(0,0,0,.45)}.footer-heart{color:#ff8fce}.music-player{position:fixed;z-index:3;bottom:28px;display:flex;align-items:center;gap:12px;width:280px;padding:12px;border:1px solid hsla(0,0%,100%,.18);border-radius:16px;color:#fff;background:rgba(34,28,66,.62);box-shadow:0 18px 46px rgba(10,8,24,.36);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.music-player.right-bottom{right:28px}.music-player.left-bottom{left:28px}.music-cover{display:grid;place-items:center;width:54px;height:54px;flex:0 0 54px;border:0;border-radius:12px;color:#ff9bd7;background:rgba(255,185,233,.18);font-size:28px;cursor:pointer;overflow:hidden}.music-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.music-main{min-width:0;flex:1}.music-artist,.music-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.music-title{font-size:15px;font-weight:800}.music-artist{margin-top:3px;color:hsla(0,0%,100%,.72);font-size:12px}.music-actions{display:flex;gap:8px;margin-top:8px}.music-actions button{height:26px;border:0;border-radius:999px;color:#fff;background:rgba(255,154,216,.28);cursor:pointer}.admin-login,.admin-shell{min-height:100vh;color:#1f2430;background:#f3f5fa}.admin-login{display:grid;place-items:center;padding:24px}.admin-login-card{width:min(420px,100%);padding:34px;border:1px solid #e2e6ef;border-radius:8px;background:#fff;box-shadow:0 20px 56px rgba(22,27,45,.12)}.admin-login-card h1{margin:0 0 8px;font-size:28px}.admin-login-card p{margin:0 0 28px;color:#697386}.admin-form-grid label,.admin-login-card label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:700;color:#394256}.admin-form-grid input,.admin-form-grid select,.admin-form-grid textarea,.admin-inline-form input,.admin-login-card input,.admin-table input{width:100%;min-height:38px;border:1px solid #d8deea;border-radius:6px;padding:8px 10px;color:#1f2430;background:#fff;font:inherit}.admin-login-card label+label{margin-top:16px}.admin-actions a,.admin-actions button,.admin-inline-form button,.admin-login-card button,.admin-panel .primary,.row-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:0;border-radius:6px;padding:0 14px;color:#fff;background:#4169e1;font-weight:800;cursor:pointer}.admin-login-card button{width:100%;margin-top:22px}.admin-error{display:block;margin-top:14px;color:#d7263d;font-size:14px}.admin-shell{display:grid;grid-template-columns:224px minmax(0,1fr)}.admin-sidebar{min-height:100vh;padding:22px 14px;background:#1d2433}.admin-brand{margin:0 8px 24px;color:#fff;font-size:19px;font-weight:900}.admin-sidebar button{display:block;width:100%;margin-bottom:6px;border:0;border-radius:6px;padding:12px 14px;color:hsla(0,0%,100%,.76);background:transparent;text-align:left;font-weight:800;cursor:pointer}.admin-sidebar button.active,.admin-sidebar button:hover{color:#fff;background:#4169e1}.admin-main{min-width:0;padding:24px}.admin-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.admin-topbar h1{margin:0 0 6px;font-size:26px}.admin-topbar span{color:#697386}.admin-actions{display:flex;gap:10px}.admin-actions button{background:#5f6778}.admin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.admin-panel,.admin-stat{border:1px solid #e2e6ef;border-radius:8px;background:#fff;box-shadow:0 10px 28px rgba(22,27,45,.06)}.admin-stat{padding:22px}.admin-stat span{display:block;color:#697386;font-weight:700}.admin-stat strong{display:block;margin-top:12px;font-size:34px}.admin-panel{padding:20px}.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}.admin-form-grid textarea{min-height:90px;resize:vertical}.admin-inline-form{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr)) auto;gap:10px;margin-bottom:18px}.admin-field-cell{display:flex;flex-direction:column;gap:6px}.admin-field-cell input[type=file],.admin-table input[type=file]{padding:7px;font-size:12px}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;min-width:900px;border-collapse:collapse}.admin-table td,.admin-table th{border-bottom:1px solid #edf0f6;padding:10px;text-align:left;vertical-align:middle}.admin-table th{color:#697386;font-size:13px}.row-actions{display:flex;gap:8px}.row-actions button:last-child{background:#d7263d}.photo-page{display:grid;grid-template-columns:244px minmax(0,1fr) 250px;gap:14px;min-height:100vh;padding:18px;color:#f7f7fb;background:radial-gradient(circle at 72% 8%,rgba(98,72,158,.22),transparent 30%),linear-gradient(135deg,#0d121b,#11151f 46%,#151421)}.photo-library,.photo-sidebar,.photo-widget{border:1px solid hsla(0,0%,100%,.08);border-radius:8px;background:rgba(25,27,38,.74);box-shadow:0 16px 42px rgba(0,0,0,.24)}.photo-sidebar{padding:18px 16px}.photo-brand{display:inline-flex;align-items:center;gap:12px;margin-bottom:26px;font-size:19px;font-weight:900}.photo-brand span{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,#6e56d8,#313546)}.photo-nav{display:flex;flex-direction:column;gap:8px;padding-bottom:22px;border-bottom:1px solid hsla(0,0%,100%,.08)}.photo-cloud button,.photo-filters button,.photo-filters select,.photo-line,.photo-nav a,.photo-nav button,.photo-pager button,.photo-pager select,.photo-tag-row,.photo-top-actions a{min-height:38px;border:0;border-radius:6px;color:hsla(0,0%,100%,.82);background:transparent;font:inherit;cursor:pointer}.photo-nav a,.photo-nav button{display:flex;align-items:center;padding:0 14px;font-weight:800;text-align:left}.photo-filters button.active,.photo-nav .active,.photo-nav a:hover,.photo-nav button:hover{color:#fff;background:rgba(118,91,222,.36)}.photo-side-section{padding-top:20px}.photo-side-section h2,.photo-widget h2{margin:0 0 16px;font-size:16px}.photo-tag-row{display:grid;grid-template-columns:16px 1fr auto;align-items:center;width:100%;gap:8px;padding:0 2px;color:hsla(0,0%,100%,.72)}.photo-tag-row.active,.photo-tag-row:hover{color:#fff}.tag-dot{width:10px;height:10px;border-radius:50%}.photo-cloud span,.photo-line em,.photo-tag-row em{color:hsla(0,0%,100%,.62);font-style:normal}.photo-center{min-width:0}.photo-topbar{justify-content:space-between;gap:18px;margin-bottom:16px}.photo-search,.photo-topbar{display:flex;align-items:center}.photo-search{gap:10px;width:min(560px,100%);min-height:40px;padding:0 14px;border:1px solid hsla(0,0%,100%,.08);border-radius:8px;background:rgba(31,33,45,.9)}.photo-search input{width:100%;border:0;outline:0;color:#fff;background:transparent;font:inherit}.photo-top-actions{display:flex;align-items:center;gap:10px}.photo-top-actions a{display:inline-flex;align-items:center;padding:0 14px;background:hsla(0,0%,100%,.08);font-weight:800}.photo-library{min-height:calc(100vh - 70px);padding:20px 16px 16px}.photo-library-head{display:flex;justify-content:space-between;gap:18px;margin-bottom:20px}.photo-library-head h1{margin:0 0 8px;font-size:26px}.photo-library-head p{margin:0;color:hsla(0,0%,100%,.68)}.photo-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.photo-filters select,.photo-pager select{padding:0 12px;background:hsla(0,0%,100%,.08)}.photo-filters button,.photo-pager button{width:38px;background:hsla(0,0%,100%,.08)}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.photo-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.photo-card{position:relative;min-height:158px;border:0;overflow:hidden;border-radius:8px;background:#202637;color:inherit;text-align:left;cursor:zoom-in}.photo-card img{display:block;width:100%;aspect-ratio:4/3;-o-object-fit:cover;object-fit:cover;transition:transform .25s ease}.photo-card:hover img{transform:scale(1.04)}.photo-format,.photo-star{position:absolute;border-radius:6px;background:rgba(12,16,24,.48);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.photo-format{left:10px;bottom:10px;padding:4px 7px;font-size:12px}.photo-star{top:10px;right:10px;display:grid;place-items:center;width:30px;height:30px;color:#fff}.photo-star.active{color:#ffd44d}.photo-card-info{position:absolute;left:0;right:0;bottom:0;display:none;padding:30px 12px 12px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.72))}.photo-card:hover .photo-card-info{display:block}.photo-card-info small,.photo-card-info strong{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.photo-card-info small{margin-top:4px;color:hsla(0,0%,100%,.72)}.image-preview-overlay{position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:28px;background:rgba(6,8,18,.78);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.image-preview-dialog{position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto;width:min(1120px,100%);max-height:calc(100vh - 56px);overflow:hidden;border:1px solid hsla(0,0%,100%,.16);border-radius:8px;background:rgba(18,19,34,.92);box-shadow:0 28px 90px rgba(0,0,0,.48)}.image-preview-dialog>img{display:block;width:100%;max-height:calc(100vh - 174px);-o-object-fit:contain;object-fit:contain;background:#090b16}.image-preview-close{position:absolute;top:14px;right:14px;z-index:1;display:grid;place-items:center;width:40px;height:40px;border:1px solid hsla(0,0%,100%,.2);border-radius:50%;color:#fff;background:rgba(10,12,24,.68);font-size:26px;line-height:1;cursor:pointer}.image-preview-info{padding:16px 18px;color:#fff;background:rgba(16,18,32,.94)}.image-preview-info span,.image-preview-info strong{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.image-preview-info strong{font-size:18px}.image-preview-info span{margin-top:6px;color:hsla(0,0%,100%,.68)}.image-preview-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.image-preview-tags em{border-radius:999px;padding:4px 10px;color:#eadfff;background:rgba(130,103,232,.28);font-style:normal;font-size:12px}.photo-empty{display:grid;place-items:center;min-height:300px;color:hsla(0,0%,100%,.62)}.photo-pager{display:flex;justify-content:center;gap:8px;margin-top:20px}.photo-pager span{display:grid;place-items:center;min-width:38px;border-radius:6px;background:#6d55d7;font-weight:900}.photo-pager button:disabled{opacity:.45;cursor:not-allowed}.photo-right{display:flex;flex-direction:column;gap:14px;padding-top:56px}.photo-widget{padding:18px}.photo-cloud{display:flex;flex-wrap:wrap;gap:10px}.photo-cloud button{min-height:32px;padding:0 12px;background:hsla(0,0%,100%,.07)}.photo-line,.photo-widget p{display:flex;align-items:center;justify-content:space-between;width:100%;margin:12px 0 0}.photo-widget p{color:hsla(0,0%,100%,.72)}.photo-widget strong{color:#fff}.admin-photo-toolbar{display:grid;grid-template-columns:minmax(180px,1fr) 160px 160px 130px auto;gap:10px;margin-bottom:18px}.admin-hot-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.admin-hot-actions p{margin:0;color:#687086}.admin-hot-actions button:disabled,.admin-hot-card button:disabled{opacity:.55;cursor:wait}.admin-hot-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-hot-card{border:1px solid #e2e6ef;border-radius:8px;padding:16px;background:#fff}.admin-hot-card>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.admin-hot-card>header strong{font-size:18px}.admin-hot-state{border-radius:999px;padding:4px 9px;color:#687086;background:#eef1f7;font-size:12px}.admin-hot-state.success{color:#167a48;background:#e2f7eb}.admin-hot-state.failed{color:#bd2637;background:#ffe8eb}.admin-hot-card label{display:block;margin-bottom:10px;color:#5d6474;font-size:13px}.admin-hot-card input,.admin-hot-card select{display:block;width:100%;min-height:38px;margin-top:5px;border:1px solid #d8deea;border-radius:6px;padding:8px 10px;color:#1f2430;background:#fff;font:inherit}.admin-hot-card input:disabled{color:#7a8191;background:#f3f5f9}.admin-hot-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.admin-hot-message{min-height:36px;margin:2px 0 4px;color:#4b5364}.admin-hot-card small{color:#8a91a0}.admin-hot-card footer{display:flex;gap:8px;margin-top:14px}.admin-hot-card footer button{min-height:34px;border:0;border-radius:6px;padding:0 12px;color:#fff;background:#4169e1;font-weight:800;cursor:pointer}.admin-hot-card footer button.muted{background:#5f6778}.admin-photo-editor input,.admin-photo-editor select,.admin-photo-editor textarea,.admin-photo-toolbar input,.admin-photo-toolbar select{width:100%;min-height:38px;border:1px solid #d8deea;border-radius:6px;padding:8px 10px;color:#1f2430;background:#fff;font:inherit}.admin-photo-editor{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px;padding:14px;border:1px solid #edf0f6;border-radius:8px;background:#f9fbff}.admin-photo-editor textarea,.admin-photo-tags{grid-column:span 3}.admin-photo-tags{display:flex;flex-wrap:wrap;gap:10px}.admin-photo-tags label{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border:1px solid #d8deea;border-radius:6px;background:#fff;font-size:13px}.admin-photo-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.admin-photo-card{border:1px solid #e2e6ef;border-radius:8px;overflow:hidden;background:#fff}.admin-photo-preview-trigger{display:block;width:100%;border:0;padding:0;background:#eef1f7;cursor:zoom-in}.admin-photo-card img{display:block;width:100%;aspect-ratio:4/3;-o-object-fit:cover;object-fit:cover;background:#eef1f7}.admin-photo-card-body{padding:12px}.admin-photo-card-body input,.admin-photo-card-body select,.admin-photo-card-body textarea{width:100%;min-height:34px;margin-bottom:8px;border:1px solid #d8deea;border-radius:6px;padding:7px 9px;color:#1f2430;background:#fff;font:inherit}.admin-photo-card-body textarea{min-height:66px;resize:vertical}.admin-photo-card-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-photo-card-actions button,.admin-photo-editor button,.admin-photo-toolbar button{min-height:34px;border:0;border-radius:6px;padding:0 12px;color:#fff;background:#4169e1;font-weight:800;cursor:pointer}.admin-photo-card-actions button.danger{background:#d7263d}.admin-photo-card-actions button.muted{background:#5f6778}.tools-page{display:grid;grid-template-columns:286px minmax(0,1fr);gap:18px;padding:20px;background:radial-gradient(circle at 18% 12%,rgba(97,190,255,.18),transparent 28%),radial-gradient(circle at 76% 20%,rgba(197,124,255,.2),transparent 30%),linear-gradient(135deg,#101222,#17142a 54%,#111827)}.hot-page,.tools-page{min-height:100vh;color:#f8f7ff}.hot-page{padding:34px max(24px,calc(50vw - 640px)) 64px;background:radial-gradient(circle at 12% 8%,rgba(108,190,255,.2),transparent 30%),radial-gradient(circle at 84% 12%,rgba(235,112,213,.2),transparent 28%),linear-gradient(145deg,#101326,#17142f 55%,#0e1528)}.hot-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:30px;border:1px solid hsla(0,0%,100%,.12);border-radius:12px;background:rgba(26,25,52,.68);box-shadow:0 24px 60px rgba(0,0,0,.25);backdrop-filter:blur(18px)}.hot-back{display:inline-block;margin-bottom:30px;color:hsla(0,0%,100%,.72)}.hot-header p{margin:0 0 6px;color:#ff9cdc;font-size:12px;font-weight:900;letter-spacing:.2em}.hot-header h1{margin:0 0 8px;font-size:clamp(34px,5vw,64px)}.hot-header span{color:hsla(0,0%,100%,.66)}.hot-header button,.hot-tabs button{border:1px solid hsla(0,0%,100%,.12);border-radius:8px;padding:11px 18px;color:#fff;background:hsla(0,0%,100%,.07);font:inherit;font-weight:800;cursor:pointer}.hot-header button{min-width:116px;background:linear-gradient(135deg,#8064e8,#d25cae)}.hot-header button:disabled{opacity:.58;cursor:wait}.hot-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.hot-tabs button.active{border-color:rgba(255,159,221,.7);color:#ffd9f1;background:rgba(211,88,174,.28)}.hot-board-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.hot-board-grid.single{grid-template-columns:minmax(0,860px);justify-content:center}.hot-board{overflow:hidden;border:1px solid hsla(0,0%,100%,.1);border-radius:12px;background:rgba(24,25,48,.72);box-shadow:0 18px 48px rgba(0,0,0,.22);backdrop-filter:blur(18px)}.hot-board>header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid hsla(0,0%,100%,.08)}.hot-board>header span,.hot-board>header strong{display:block}.hot-board>header strong{font-size:20px}.hot-board>header em,.hot-board>header span{margin-top:5px;color:hsla(0,0%,100%,.5);font-size:12px;font-style:normal}.hot-board ol{margin:0;padding:8px 16px 14px;list-style:none}.hot-board li a{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:48px;border-bottom:1px solid hsla(0,0%,100%,.055)}.hot-board li:last-child a{border-bottom:0}.hot-board li b{color:hsla(0,0%,100%,.42);text-align:center}.hot-board li b.top{color:#ff9edc;font-size:18px}.hot-board li span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.hot-board li small{color:hsla(0,0%,100%,.46)}.hot-empty,.hot-message{padding:38px 20px;color:hsla(0,0%,100%,.58);text-align:center}.hot-message{border:1px solid hsla(0,0%,100%,.1);border-radius:10px;background:rgba(24,25,48,.65)}.hot-message.error{color:#ffb1c4}.hot-analysis span{color:hsla(0,0%,100%,.58)}.hot-analysis{border:1px solid hsla(0,0%,100%,.1);border-radius:12px;background:rgba(24,25,48,.72)}.hot-analysis strong{display:block;font-size:18px}.hot-analysis{margin:18px 0 22px;padding:18px}.hot-analysis.latest{background:rgba(19,27,49,.76)}.hot-analysis>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.hot-analysis pre{overflow:auto;margin:0;max-height:360px;color:hsla(0,0%,100%,.82);white-space:pre-wrap;word-break:break-word;font:inherit;line-height:1.72}.hot-analysis p{margin:14px 0 0;color:hsla(0,0%,100%,.58)}@media (max-width:760px){.hot-page{padding:18px 14px 40px}.hot-header{align-items:stretch;flex-direction:column;padding:22px}.hot-board-grid{grid-template-columns:1fr}.hot-board li a{grid-template-columns:28px minmax(0,1fr)}.hot-board li small{display:none}.admin-hot-fields,.admin-hot-list{grid-template-columns:1fr}.admin-hot-actions,.hot-analysis>div{align-items:stretch;flex-direction:column}}.tool-panel,.tools-main,.tools-sidebar{border:1px solid hsla(0,0%,100%,.1);border-radius:8px;background:rgba(24,25,43,.72);box-shadow:0 18px 48px rgba(0,0,0,.28);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.tools-sidebar{padding:18px}.tools-brand{display:flex;align-items:center;gap:12px;margin-bottom:22px;font-size:20px;font-weight:900}.tools-brand img{width:44px;height:44px;border-radius:50%;box-shadow:0 0 0 2px rgba(168,132,255,.6),0 10px 24px rgba(147,98,255,.28)}.tools-menu{display:flex;flex-direction:column;gap:10px}.tools-menu button{display:grid;grid-template-columns:40px 1fr;gap:2px 12px;min-height:74px;border:0;border-radius:8px;padding:12px;color:hsla(0,0%,100%,.78);background:hsla(0,0%,100%,.05);text-align:left;cursor:pointer;transition:transform .18s ease,background .18s ease,color .18s ease}.tools-menu button.active,.tools-menu button:hover{color:#fff;background:rgba(125,102,226,.36);transform:translateY(-2px)}.tools-menu button>span{grid-row:span 2;display:grid;place-items:center;width:40px;height:40px;border-radius:8px;color:#ffd7fb;background:hsla(0,0%,100%,.08);font-weight:900}.tools-menu strong{align-self:end;font-size:15px}.tools-menu small{color:hsla(0,0%,100%,.58)}.tools-main{min-width:0;padding:22px}.tools-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.tools-header p{margin:0 0 6px;color:#c9baff;font-weight:800}.tools-header h1{margin:0;font-size:30px}.tool-actions button,.tool-panel button,.tools-header a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:0;border-radius:6px;padding:0 14px;color:#fff;background:rgba(130,103,232,.82);font-weight:800;cursor:pointer}.tool-panel{padding:18px}.tool-panel input,.tool-panel textarea{width:100%;border:1px solid hsla(0,0%,100%,.12);border-radius:8px;padding:12px;color:#fff;background:rgba(8,10,22,.62);font:14px/1.6 Consolas,SFMono-Regular,Menlo,monospace;outline:0}.tool-panel textarea{min-height:420px;resize:vertical}.tool-panel input{min-height:42px}.tool-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.tool-actions.inline{margin:0}.tool-result,.tool-status{min-height:38px;margin:12px 0 0;border-radius:6px;padding:9px 12px;background:hsla(0,0%,100%,.06);color:hsla(0,0%,100%,.78)}.tool-status.ok{color:#9de7c4}.mermaid-error,.tool-status.error{color:#ff9cb2}.time-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.regex-config label,.time-grid label{display:flex;flex-direction:column;gap:8px;color:hsla(0,0%,100%,.72);font-weight:800}.tool-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tool-split h2{margin:0 0 10px;font-size:17px}.tool-split button{margin-top:10px}.regex-config{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:12px;margin-bottom:12px}.regex-preview{min-height:110px;margin-top:14px;border:1px solid hsla(0,0%,100%,.1);border-radius:8px;padding:14px;color:hsla(0,0%,100%,.82);background:rgba(8,10,22,.5);white-space:pre-wrap;word-break:break-word}.regex-preview .hit{border-radius:4px;padding:1px 3px;color:#1d1430;background:#ffd66b}.regex-matches{margin-top:14px;border-radius:8px;padding:14px;background:hsla(0,0%,100%,.06)}.regex-matches strong{display:block;margin-bottom:8px}.regex-matches ol{margin:0;padding-left:22px}.regex-matches li+li{margin-top:6px}.mermaid-tool .tool-split{grid-template-columns:minmax(360px,.95fr) minmax(420px,1.05fr)}.mermaid-preview{min-height:420px;overflow:auto;border:1px solid hsla(0,0%,100%,.1);border-radius:8px;padding:16px;background:rgba(8,10,22,.62)}.mermaid-preview svg{max-width:100%;height:auto}@media (max-width:1180px){.home-content{grid-template-columns:1fr;gap:34px;padding-top:24px}.hero-intro{max-width:760px;padding-top:24px}.photo-page{grid-template-columns:210px minmax(0,1fr)}.photo-right{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:0}.admin-photo-list{grid-template-columns:repeat(2,minmax(0,1fr))}.tools-page{grid-template-columns:1fr}.tools-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.home-page{overflow-y:auto}.home-content,.home-header{width:min(100% - 28px,680px)}.home-header{grid-template-columns:1fr;height:auto;gap:16px;padding:24px 0 0}.brand,.header-tools{justify-self:center}.brand-text{font-size:26px}.header-tools{width:100%;justify-content:center}.time-card{flex:1;min-width:0}.hero-intro h1{font-size:32px}.hello{font-size:36px}.info-cards,.site-grid{grid-template-columns:1fr}.weather-body{align-items:flex-start}.site-card{min-height:132px}.home-footer{position:relative;bottom:auto;padding:12px 20px 22px}.music-player{left:14px;right:14px;bottom:14px;width:auto}.admin-shell{grid-template-columns:1fr}.admin-sidebar{min-height:auto}.admin-form-grid,.admin-grid,.admin-inline-form,.photo-page{grid-template-columns:1fr}.photo-page{padding:12px}.photo-library-head,.photo-topbar{align-items:stretch;flex-direction:column}.photo-right{display:flex}.admin-photo-editor,.admin-photo-list,.admin-photo-toolbar,.photo-grid,.photo-grid.compact{grid-template-columns:1fr}.admin-photo-editor textarea,.admin-photo-tags{grid-column:span 1}.tools-page{padding:12px}.tools-main{padding:16px}.tool-split,.tools-header{flex-direction:column;grid-template-columns:1fr}.mermaid-tool .tool-split,.regex-config,.time-grid,.tools-menu{grid-template-columns:1fr}.mermaid-preview,.tool-panel textarea{min-height:300px}.image-preview-overlay{padding:12px}.image-preview-dialog{max-height:calc(100vh - 24px)}.image-preview-dialog>img{max-height:calc(100vh - 150px)}}