238 lines
23 KiB
CSS
238 lines
23 KiB
CSS
:root {
|
|
--ink: #17211b;
|
|
--muted: #657068;
|
|
--paper: #f3f1e9;
|
|
--panel: rgba(255, 255, 252, .78);
|
|
--line: rgba(23, 33, 27, .13);
|
|
--green: #196548;
|
|
--lime: #cce85b;
|
|
--orange: #ef704f;
|
|
--blue: #6689c7;
|
|
--radius: 22px;
|
|
}
|
|
|
|
* { box-sizing: border-box; }
|
|
html { scroll-behavior: smooth; }
|
|
body {
|
|
margin: 0;
|
|
color: var(--ink);
|
|
background: var(--paper);
|
|
font-family: Inter, "PingFang SC", "Microsoft YaHei", sans-serif;
|
|
min-height: 100vh;
|
|
}
|
|
button, input, select, textarea { font: inherit; }
|
|
button { color: inherit; }
|
|
.ambient { position: fixed; border-radius: 50%; filter: blur(1px); pointer-events: none; z-index: -1; opacity: .55; }
|
|
.ambient-one { width: 38vw; height: 38vw; right: -12vw; top: -12vw; background: radial-gradient(circle, #d9ee8c 0, transparent 68%); }
|
|
.ambient-two { width: 42vw; height: 42vw; left: 12vw; bottom: -26vw; background: radial-gradient(circle, #d7e2f4 0, transparent 68%); }
|
|
.app-shell { min-height: 100vh; display: grid; grid-template-columns: 230px 1fr; }
|
|
.sidebar {
|
|
position: sticky; top: 0; height: 100vh; padding: 30px 22px;
|
|
border-right: 1px solid var(--line); display: flex; flex-direction: column;
|
|
background: rgba(243, 241, 233, .74); backdrop-filter: blur(18px);
|
|
}
|
|
.brand { display: flex; gap: 12px; align-items: center; color: inherit; text-decoration: none; }
|
|
.brand-mark {
|
|
display: grid; place-items: center; width: 42px; height: 42px; border-radius: 13px;
|
|
background: var(--ink); color: var(--lime); font-family: Georgia, serif; font-size: 24px;
|
|
}
|
|
.brand strong, .brand small { display: block; }
|
|
.brand strong { font-size: 17px; letter-spacing: .08em; }
|
|
.brand small { margin-top: 3px; color: var(--muted); font-size: 9px; letter-spacing: .22em; }
|
|
.nav { margin-top: 58px; display: grid; gap: 7px; }
|
|
.nav-item {
|
|
border: 0; background: transparent; border-radius: 12px; padding: 13px 12px;
|
|
text-align: left; cursor: pointer; color: var(--muted); transition: .2s ease;
|
|
}
|
|
.nav-item span { display: inline-block; width: 30px; font: 10px/1 Georgia, serif; color: #99a097; }
|
|
.nav-item:hover, .nav-item.active { color: var(--ink); background: rgba(255,255,255,.7); transform: translateX(3px); }
|
|
.nav-item.active { box-shadow: inset 3px 0 var(--green); }
|
|
.sidebar-foot { margin-top: auto; display: grid; gap: 15px; }
|
|
.system-status { font-size: 11px; color: var(--muted); text-transform: uppercase; letter-spacing: .1em; }
|
|
.system-status i { width: 7px; height: 7px; margin-right: 7px; display: inline-block; border-radius: 50%; background: #5bb67c; box-shadow: 0 0 0 4px rgba(91,182,124,.13); }
|
|
.ghost-button, .text-button {
|
|
background: transparent; border: 1px solid var(--line); border-radius: 10px; padding: 11px 14px; cursor: pointer;
|
|
}
|
|
.main { padding: 0 46px 70px; min-width: 0; }
|
|
.topbar { height: 82px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); }
|
|
.topbar p { color: var(--muted); font-size: 11px; letter-spacing: .08em; }
|
|
.topbar-actions { display: flex; align-items: center; gap: 12px; }
|
|
.admin-entry {
|
|
display: flex; align-items: center; gap: 10px; padding: 9px 12px; border: 1px solid rgba(25,101,72,.22);
|
|
border-radius: 10px; background: rgba(25,101,72,.06); color: var(--green); font-size: 11px; font-weight: 700; text-decoration: none;
|
|
}
|
|
.admin-entry[hidden] { display: none; }
|
|
.admin-entry:hover { background: var(--green); color: white; }
|
|
.admin-entry b { font-size: 14px; }
|
|
.user-chip { display: flex; align-items: center; gap: 9px; font-size: 13px; }
|
|
.avatar { width: 31px; height: 31px; border-radius: 50%; display: grid; place-items: center; background: var(--ink); color: white; font-size: 11px; }
|
|
.view { display: none; animation: rise .35s ease; }
|
|
.view.active { display: block; }
|
|
@keyframes rise { from { opacity: 0; transform: translateY(8px); } }
|
|
.hero-grid { display: grid; grid-template-columns: minmax(0, 1.75fr) minmax(280px, .75fr); gap: 18px; margin-top: 28px; }
|
|
.hero, .daily-card, .spirit, .content-card, .editor-shell, .profile-panel {
|
|
border: 1px solid rgba(23,33,27,.1); border-radius: var(--radius); background: var(--panel);
|
|
box-shadow: 0 24px 70px rgba(38, 48, 40, .06); backdrop-filter: blur(14px);
|
|
}
|
|
.hero { min-height: 450px; padding: 55px; display: flex; flex-direction: column; position: relative; overflow: hidden; }
|
|
.hero::after {
|
|
content: ""; position: absolute; width: 330px; height: 330px; right: -100px; bottom: -150px;
|
|
border: 55px solid rgba(25,101,72,.09); border-radius: 50%;
|
|
}
|
|
.kicker { color: var(--green); font-size: 10px; font-weight: 700; letter-spacing: .24em; }
|
|
.hero h1, .page-title h1 { margin: 20px 0 18px; font: 500 clamp(42px, 5vw, 76px)/1.03 Georgia, "Songti SC", serif; letter-spacing: -.04em; }
|
|
.hero h1 em { color: var(--green); font-weight: inherit; }
|
|
.hero p { max-width: 600px; color: var(--muted); font-size: 15px; line-height: 1.9; }
|
|
.hero-actions { margin-top: auto; display: flex; align-items: center; gap: 13px; position: relative; z-index: 1; }
|
|
.primary-button, .dark-button {
|
|
border: 0; border-radius: 12px; padding: 14px 19px; cursor: pointer; transition: .2s ease; font-weight: 650;
|
|
}
|
|
.primary-button { background: var(--green); color: white; }
|
|
.primary-button b { margin-left: 22px; }
|
|
.primary-button:hover, .dark-button:hover { transform: translateY(-2px); box-shadow: 0 12px 25px rgba(23,33,27,.16); }
|
|
.text-button { border-color: transparent; }
|
|
.hero-index { position: absolute; top: 35px; right: 45px; color: rgba(25,101,72,.12); font: 110px/1 Georgia, serif; }
|
|
.daily-card { background: var(--ink); color: white; padding: 32px; display: flex; flex-direction: column; align-items: flex-start; }
|
|
.card-label { color: #aeb9b1; font-size: 9px; letter-spacing: .22em; }
|
|
.pulse-orbit {
|
|
width: 130px; height: 130px; border: 1px solid rgba(204,232,91,.35); border-radius: 50%;
|
|
margin: 35px auto 25px; align-self: center; display: grid; place-items: center; position: relative;
|
|
}
|
|
.pulse-orbit::before { content: ""; position: absolute; inset: 12px; border: 1px dashed rgba(204,232,91,.35); border-radius: 50%; }
|
|
.pulse-orbit span { color: var(--lime); font: 48px/1 Georgia, serif; }
|
|
.pulse-orbit small { position: absolute; bottom: 27px; color: #aeb9b1; }
|
|
.daily-card h2 { margin: 10px 0 7px; font: 27px/1.2 Georgia, serif; }
|
|
.daily-card p { color: #aeb9b1; line-height: 1.75; font-size: 13px; }
|
|
.dark-button { margin-top: auto; width: 100%; background: var(--lime); color: var(--ink); }
|
|
.section { margin-top: 70px; }
|
|
.section-heading { display: flex; align-items: end; justify-content: space-between; margin-bottom: 22px; }
|
|
.section-heading h2 { margin: 8px 0 0; font: 32px Georgia, serif; }
|
|
.section-heading p { margin: 0; color: var(--muted); font-size: 13px; }
|
|
.spirit-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 13px; }
|
|
.spirit { min-height: 218px; padding: 24px; position: relative; overflow: hidden; transition: .2s ease; }
|
|
.spirit:hover { transform: translateY(-5px); }
|
|
.spirit b { color: #9da49f; font: 12px Georgia, serif; }
|
|
.spirit h3 { margin: 31px 0 11px; font: 27px Georgia, serif; }
|
|
.spirit p { color: var(--muted); font-size: 13px; line-height: 1.65; }
|
|
.spirit span { position: absolute; bottom: 20px; color: var(--green); font-size: 10px; letter-spacing: .08em; }
|
|
.spirit::after { content: ""; position: absolute; width: 75px; height: 75px; border-radius: 50%; right: -28px; top: -28px; opacity: .55; }
|
|
.believer::after { background: var(--lime); }.communicator::after { background: var(--blue); }.practitioner::after { background: var(--orange); }.intuitive::after { background: #bb8ac4; }
|
|
.page-title { padding: 65px 0 35px; }
|
|
.page-title h1 { font-size: clamp(44px, 6vw, 70px); margin-bottom: 12px; }
|
|
.page-title p { color: var(--muted); }
|
|
.content-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
|
|
.content-grid.loading { color: var(--muted); display: block; padding: 40px 0; }
|
|
.content-card { min-height: 235px; padding: 26px; display: flex; flex-direction: column; }
|
|
.content-card .meta { color: var(--green); font-size: 9px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
|
|
.content-card h3 { margin: 25px 0 11px; font: 25px/1.25 Georgia, serif; }
|
|
.content-card p { color: var(--muted); font-size: 13px; line-height: 1.75; }
|
|
.content-card footer { margin-top: auto; display: flex; align-items: center; justify-content: space-between; }
|
|
.content-card footer span { color: var(--muted); font-size: 11px; }
|
|
.content-card footer button { border: 0; border-bottom: 1px solid var(--ink); padding: 4px 0; background: transparent; cursor: pointer; }
|
|
.track-switch { display: flex; gap: 5px; margin-bottom: 22px; }
|
|
.track-switch button { border: 1px solid var(--line); padding: 9px 18px; border-radius: 99px; background: transparent; cursor: pointer; }
|
|
.track-switch button.active { background: var(--ink); color: white; }
|
|
.editor-shell { display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; min-height: 430px; }
|
|
.editor-pane, .preview-pane { padding: 28px; }
|
|
.editor-pane { background: #1d2721; color: white; }
|
|
.editor-pane label, .preview-pane > span { display: block; color: #9eaaa2; font-size: 10px; letter-spacing: .16em; text-transform: uppercase; }
|
|
.editor-pane textarea { width: 100%; height: 330px; margin-top: 22px; resize: none; border: 0; outline: 0; background: transparent; color: #dcefa1; font: 16px/1.8 "SFMono-Regular", Consolas, monospace; }
|
|
.preview-pane { display: flex; flex-direction: column; }
|
|
#latex-preview { margin: auto; max-width: 100%; overflow-wrap: anywhere; font: 28px/1.6 Georgia, serif; }
|
|
.preview-pane button { align-self: flex-end; }
|
|
.profile-panel { padding: 35px; }
|
|
.metric-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
|
|
.metric { background: rgba(25,101,72,.06); border-radius: 14px; padding: 17px; }
|
|
.metric b, .metric span { display: block; }.metric b { font: 28px Georgia, serif; }.metric span { margin-top: 5px; color: var(--muted); font-size: 11px; }
|
|
.tool-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; margin-bottom: 22px; }
|
|
.tool-card {
|
|
min-height: 165px; border: 1px solid var(--line); border-radius: 18px; padding: 22px;
|
|
background: rgba(255,255,252,.7); text-align: left; cursor: pointer; transition: .2s ease;
|
|
}
|
|
.tool-card:hover, .tool-card.active { transform: translateY(-3px); border-color: rgba(25,101,72,.48); box-shadow: 0 16px 35px rgba(38,48,40,.08); }
|
|
.tool-card.active { background: var(--ink); color: white; }
|
|
.tool-card > span { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 15px; background: rgba(25,101,72,.08); color: var(--green); font: 700 17px Georgia, serif; }
|
|
.tool-card.active > span { color: var(--lime); background: rgba(204,232,91,.1); }
|
|
.tool-card b, .tool-card small { display: block; }.tool-card b { margin-top: 18px; font: 19px Georgia, serif; }.tool-card small { margin-top: 7px; color: var(--muted); line-height: 1.5; }
|
|
.tool-card.active small { color: #aeb9b1; }
|
|
.tool-workspace { display: none; border: 1px solid var(--line); border-radius: var(--radius); padding: 30px; background: var(--panel); }
|
|
.tool-workspace.active { display: block; animation: rise .3s ease; }
|
|
.workspace-heading { display: flex; justify-content: space-between; gap: 30px; align-items: end; margin-bottom: 25px; }
|
|
.workspace-heading h2 { margin: 7px 0 0; font: 31px Georgia, serif; }.workspace-heading p { max-width: 480px; color: var(--muted); font-size: 13px; }
|
|
.calculator-shell { max-width: 800px; margin: auto; }
|
|
.calculator-display { min-height: 145px; border-radius: 18px; padding: 25px; background: var(--ink); color: white; display: flex; flex-direction: column; justify-content: space-between; text-align: right; }
|
|
.calculator-display small { color: #9eaaa2; }.calculator-display output { color: var(--lime); font: 48px/1 Georgia, serif; overflow-wrap: anywhere; }
|
|
.formula-input, .search-input { width: 100%; border: 1px solid var(--line); border-radius: 12px; padding: 14px 16px; background: white; outline-color: var(--green); }
|
|
.calculator-shell > .formula-input { margin: 14px 0; font: 18px "SFMono-Regular", Consolas, monospace; }
|
|
.calculator-actions { display: flex; flex-wrap: wrap; gap: 8px; }.calculator-actions button { border: 1px solid var(--line); border-radius: 10px; padding: 11px 15px; background: white; cursor: pointer; }.calculator-actions .primary-button { margin-left: auto; color: white; background: var(--green); border: 0; }
|
|
.search-input { width: min(370px, 100%); }
|
|
.symbol-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
|
|
.symbol-card { border: 1px solid var(--line); border-radius: 15px; padding: 18px; background: white; cursor: pointer; text-align: left; }
|
|
.symbol-card strong { display: block; color: var(--green); font: 29px Georgia, serif; }.symbol-card b { display: block; margin-top: 10px; }.symbol-card small { display: block; margin-top: 5px; color: var(--muted); }.symbol-card code { display: inline-block; margin-top: 12px; padding: 4px 7px; border-radius: 6px; background: #f0f1eb; color: #405048; }
|
|
.graph-shell { display: grid; grid-template-columns: 245px minmax(0, 1fr); gap: 20px; }
|
|
.graph-controls { display: flex; flex-direction: column; gap: 17px; }.graph-controls label { display: grid; gap: 8px; color: var(--muted); font-size: 12px; }.graph-controls p { color: #b84136; font-size: 12px; }
|
|
#graph-canvas { width: 100%; height: auto; border: 1px solid var(--line); border-radius: 17px; background: #fbfbf7; }
|
|
.discover-title { padding-bottom: 24px; }
|
|
.ability-map { border: 1px solid var(--line); border-radius: var(--radius); padding: 28px; background: rgba(255,255,252,.64); overflow: hidden; }
|
|
.map-heading { display: flex; align-items: start; justify-content: space-between; gap: 20px; }.map-heading h2 { margin: 0 0 6px; font: 30px Georgia, serif; }.map-heading p { margin: 0; color: var(--muted); font-size: 13px; }
|
|
.ability-legend { display: flex; gap: 12px; flex-wrap: wrap; justify-content: end; }.ability-legend span { color: var(--muted); font-size: 10px; }.ability-legend i { display: inline-block; width: 7px; height: 7px; border-radius: 50%; margin-right: 4px; }
|
|
.map-stage { position: relative; max-width: 1050px; height: 390px; margin: 8px auto 0; }
|
|
.map-lines { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }.map-lines path { fill: none; stroke: #c8c9c2; stroke-width: 2; stroke-dasharray: 12 14; vector-effect: non-scaling-stroke; }
|
|
.ability-node { position: absolute; width: 128px; height: 105px; border: 2px solid currentColor; border-radius: 15px; background: #fbfbf8; color: var(--green); cursor: pointer; box-shadow: 0 12px 24px rgba(38,48,40,.05); transition: .2s ease; }
|
|
.ability-node:hover, .ability-node.active { transform: translateY(-5px); box-shadow: 0 17px 32px rgba(38,48,40,.13); background: white; }
|
|
.ability-node span, .ability-node b, .ability-node small { display: block; }.ability-node span { font-size: 25px; }.ability-node b { margin-top: 7px; color: var(--ink); }.ability-node small { margin: 7px auto 0; width: 34px; border-radius: 99px; padding: 3px; background: currentColor; color: white; }
|
|
.node-vision { left: calc(50% - 64px); top: 5px; color: #5d73e8; }.node-humanities { left: 8%; top: 65px; color: #b76d38; }.node-detection { left: 18%; bottom: 12px; color: #287f78; }.node-modeling { right: 18%; bottom: 12px; color: #d98628; }.node-connection { right: 8%; top: 65px; color: #8667b5; }
|
|
.pet-node { position: absolute; left: calc(50% - 49px); top: 145px; width: 98px; height: 98px; border: 2px solid #b49d8b; border-radius: 50%; background: white; display: grid; place-items: center; box-shadow: 0 13px 25px rgba(38,48,40,.12); }
|
|
.pet-node b { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: #778990; color: white; font: 22px Georgia, serif; }.pet-node span { position: absolute; bottom: 8px; font-size: 10px; color: var(--muted); }
|
|
.map-hint { margin: 0; text-align: center; color: #a0a49e; font-size: 11px; }
|
|
.video-browser { margin-top: 28px; }.filter-row { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 11px; }
|
|
.filter-chip { border: 1px solid var(--line); border-radius: 99px; padding: 9px 14px; background: rgba(255,255,252,.7); color: var(--muted); cursor: pointer; }
|
|
.filter-chip.active { background: var(--ink); border-color: var(--ink); color: white; }
|
|
.discipline-filters .filter-chip { border-radius: 9px; }
|
|
.video-section-heading { margin: 35px 0 16px; display: flex; justify-content: space-between; align-items: end; }.video-section-heading h2 { margin: 8px 0 0; font: 30px Georgia, serif; }.video-section-heading > span { color: var(--muted); font-size: 12px; }
|
|
.video-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }.video-grid.loading { display: block; color: var(--muted); padding: 35px 0; }
|
|
.video-card { border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,252,.82); overflow: hidden; cursor: pointer; transition: .2s ease; }
|
|
.video-card:hover { transform: translateY(-4px); box-shadow: 0 18px 38px rgba(38,48,40,.1); }
|
|
.video-cover { height: 175px; padding: 15px; display: flex; align-items: center; justify-content: center; position: relative; background: linear-gradient(135deg, var(--cover-a), var(--cover-b)); }
|
|
.video-cover > span { opacity: .34; font-size: 52px; }.video-duration { position: absolute; left: 13px; top: 12px; border-radius: 7px; padding: 5px 8px; color: white; background: rgba(23,33,27,.62); font-size: 11px; }
|
|
.video-complete { position: absolute; right: 12px; top: 12px; background: var(--green); color: white; border-radius: 99px; padding: 5px 8px; font-size: 9px; }
|
|
.video-body { padding: 19px; }.ability-badge { display: inline-block; border: 1px solid var(--badge-color); color: var(--badge-color); border-radius: 8px; padding: 5px 8px; font-size: 10px; }.video-body h3 { min-height: 48px; margin: 14px 0 16px; font: 20px/1.3 Georgia, serif; }.video-metrics, .video-author { display: flex; justify-content: space-between; color: var(--muted); font-size: 11px; }.video-author { justify-content: flex-start; gap: 8px; align-items: center; margin-top: 14px; }.video-author i { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--badge-color); color: white; font-style: normal; }
|
|
.video-dialog { width: min(760px, calc(100% - 30px)); }.video-player { min-height: 300px; border-radius: 17px; background: var(--ink); display: grid; place-items: center; color: white; text-align: center; padding: 30px; }.video-player span { display: block; color: var(--lime); font-size: 55px; }.video-player p { color: #aeb9b1; }.video-detail-meta { display: flex; gap: 12px; flex-wrap: wrap; color: var(--muted); font-size: 11px; margin: 18px 0; }.video-dialog h2 { font: 31px/1.2 Georgia, serif; }.video-dialog .video-description { color: var(--muted); line-height: 1.8; }.video-dialog-actions { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 22px; }
|
|
dialog { width: min(460px, calc(100% - 30px)); border: 1px solid var(--line); border-radius: 20px; padding: 30px; color: var(--ink); background: #faf9f3; box-shadow: 0 30px 100px rgba(0,0,0,.22); }
|
|
dialog::backdrop { background: rgba(17,25,20,.55); backdrop-filter: blur(5px); }
|
|
.dialog-close { position: absolute; right: 16px; top: 13px; border: 0; background: transparent; font-size: 25px; cursor: pointer; }
|
|
.dialog-tabs { display: flex; border-bottom: 1px solid var(--line); margin-bottom: 25px; }
|
|
.dialog-tabs button { border: 0; background: transparent; padding: 10px 15px; color: var(--muted); cursor: pointer; }
|
|
.dialog-tabs button.active { color: var(--ink); border-bottom: 2px solid var(--green); }
|
|
.auth-form { display: grid; gap: 15px; }.auth-form h2 { font: 28px Georgia, serif; margin: 0 0 5px; }
|
|
.auth-form label { display: grid; gap: 7px; color: var(--muted); font-size: 12px; }
|
|
.auth-form input, .auth-form select { width: 100%; border: 1px solid var(--line); border-radius: 10px; background: white; padding: 12px; outline-color: var(--green); }
|
|
.hidden { display: none !important; }.form-error { min-height: 18px; color: #b84136; font-size: 12px; }
|
|
.experience-dialog { width: min(760px, calc(100% - 30px)); }
|
|
.experience-dialog h2 { font: 34px Georgia, serif; }.experience-dialog .scene { white-space: pre-line; line-height: 1.9; color: #3e4942; }
|
|
.choice-list { display: grid; gap: 9px; margin-top: 25px; }
|
|
.choice-list button { text-align: left; border: 1px solid var(--line); border-radius: 12px; padding: 14px; background: white; cursor: pointer; }
|
|
.choice-list button:hover { border-color: var(--green); }
|
|
.quiz-progress { height: 4px; background: #e4e3da; margin: 15px 0 30px; }.quiz-progress i { display: block; height: 100%; background: var(--green); transition: width .2s; }
|
|
.toast { position: fixed; right: 25px; bottom: 25px; background: var(--ink); color: white; border-radius: 12px; padding: 13px 17px; opacity: 0; transform: translateY(10px); pointer-events: none; transition: .2s; z-index: 20; }
|
|
.toast.show { opacity: 1; transform: none; }
|
|
.csrf-token { display: none; }
|
|
|
|
@media (max-width: 1050px) {
|
|
.app-shell { grid-template-columns: 80px 1fr; }.sidebar { padding: 25px 13px; }.brand span:last-child, .nav-item:not(.active) span, .nav-item { font-size: 0; }
|
|
.nav-item { text-align: center; }.nav-item span { width: auto; font-size: 11px !important; }.sidebar-foot { display: none; }
|
|
.hero-grid { grid-template-columns: 1fr; }.daily-card { min-height: 350px; }.spirit-grid { grid-template-columns: 1fr 1fr; }.content-grid { grid-template-columns: 1fr 1fr; }
|
|
.tool-grid { grid-template-columns: repeat(3, 1fr); }.symbol-grid { grid-template-columns: repeat(3, 1fr); }.video-grid { grid-template-columns: 1fr 1fr; }
|
|
}
|
|
@media (max-width: 700px) {
|
|
.app-shell { display: block; }.sidebar { position: fixed; top: auto; bottom: 0; width: 100%; height: 68px; z-index: 10; border: 0; border-top: 1px solid var(--line); padding: 8px; }
|
|
.brand, .sidebar-foot { display: none; }.nav { margin: 0; grid-template-columns: repeat(6, 1fr); gap: 2px; }.nav-item { padding: 11px 2px; font-size: 0; }.nav-item span { display: block; margin: auto; }
|
|
.main { padding: 0 18px 90px; }.topbar { height: 66px; }.topbar p { max-width: 55%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
|
.hero { min-height: 500px; padding: 35px 25px; }.hero h1 { font-size: 44px; }.hero-actions { align-items: stretch; flex-direction: column; }
|
|
.section-heading { display: block; }.section-heading p { margin-top: 12px; }.spirit-grid, .content-grid, .editor-shell, .metric-grid, .tool-grid, .symbol-grid, .video-grid, .graph-shell { grid-template-columns: 1fr; }
|
|
.content-grid { gap: 11px; }.editor-shell { min-height: 700px; }.page-title { padding-top: 42px; }.page-title h1 { font-size: 45px; }
|
|
.tool-card { min-height: 125px; }.workspace-heading, .map-heading { display: block; }.workspace-heading p { margin-top: 12px; }.tool-workspace { padding: 20px; }
|
|
.map-stage { height: 480px; transform: scale(.92); }.ability-node { width: 108px; height: 94px; }.node-vision { left: calc(50% - 54px); }.node-humanities { left: 0; top: 100px; }.node-connection { right: 0; top: 100px; }.node-detection { left: 2%; bottom: 30px; }.node-modeling { right: 2%; bottom: 30px; }.pet-node { top: 190px; }
|
|
.map-lines { display: none; }.ability-legend { margin-top: 14px; justify-content: start; }.video-cover { height: 150px; }
|
|
}
|