.masthead-title{text-decoration:none;color:inherit}.masthead-title span{font-size:.36em;letter-spacing:.25em;margin-left:.35em}.site-nav>div{display:flex;flex-wrap:wrap;gap:26px}.site-nav [aria-current=page]{border-bottom:3px solid #8f4935}.issue-line{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #c8c9bb;padding:16px 0;font-size:11px;color:#7b7b67;letter-spacing:1px}.lead-image{display:block}.lead-image svg,.article-figure svg{display:block;width:100%;height:auto}.article-meta>span{margin-left:auto;color:#31574a}.archive-year{font:70px/1.15 Georgia,serif;color:#9c553c;margin:18px 0}.small-column{border-top:1px solid #bdbfac;padding-top:18px;margin-top:25px}.small-column p{font-size:13px;line-height:1.9}.small-column a{font-size:12px}.quoted-record{border-left:3px solid #8f6d4c;background:#eee9d9;padding:18px 22px}.document-footnote,.editor-note,.article-end{font-size:12px;color:#84816e}.article-end{text-align:center;padding:35px 0;border-bottom:1px solid #d8d5c8}.article-tools{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin:22px 0}.article-tools span{font-size:10px;color:#7b8072}.article-aside>p{border-bottom:1px solid #d7d7c8;padding:14px 0;font-size:13px}.aside-note{font-size:12px;line-height:1.9;padding:20px 0;color:#7e806e}.listing-width{max-width:850px}.archive-filter{display:flex;gap:22px;align-items:center;flex-wrap:wrap;border-top:1px solid #c6c9b7;border-bottom:1px solid #c6c9b7;padding:16px 0;margin:35px 0}.archive-filter a[aria-current]{color:#994b36;font-weight:bold}.archive-filter span{font-size:11px;color:#7f836f;margin-left:auto}.archive-date{font:36px/1.4 Georgia,serif;color:#9a6046}.archive-date small{font:11px/1.6 sans-serif;margin-left:12px}.archive-footnote{font-size:12px;line-height:1.9;color:#7c7f6c;border-top:1px solid #d1d2c3;margin:35px 0;padding-top:18px}.map-toolbar>div{display:flex;gap:16px}.map-toolbar a{padding:10px 14px;border:1px solid #c5cbb9;text-decoration:none}.map-toolbar a.selected{color:#fff;background:#34584c;border-color:#34584c}.map-toolbar>span{font-size:11px;color:#7b816b}.map-paper svg{width:100%;display:block}.map-paper a:hover circle{fill:#ac6246}.map-paper a:focus circle{stroke:#bd5e40;stroke-width:7}.map-info h2{font-family:serif;font-size:22px}.map-info p{font-size:13px;line-height:1.9}.map-info .site-button{display:block;margin:12px 0}.subtle{background:transparent!important;color:#31594b!important}.large-search{display:flex;max-width:650px;margin:25px 0}.large-search input{padding:14px;border:1px solid #b6c0ac;background:#fffdf5;flex:1;min-width:0;font:inherit}.document-scan{background:#e9dfc5!important;color:#575b45;box-shadow:4px 5px 0 #b7b9a540;padding:35px!important;transform:rotate(-.4deg)}.scan-heading{text-align:center;font:26px/1.5 serif;letter-spacing:8px;border-bottom:2px solid #8c947c;padding-bottom:18px}.document-scan dl{display:grid;grid-template-columns:90px 1fr;font-size:14px;line-height:1.9}.document-scan dt,.document-scan dd{margin:0;padding:12px 4px;border-bottom:1px solid #b9b7a0}.document-scan dt{color:#7b806a}.scan-handwritten{font:16px/2 serif;color:#536951;margin-top:25px}.scan-stamp{color:#a36a56;border:2px solid #a36a5690;width:max-content;padding:5px 12px;margin:30px 0 0 auto;transform:rotate(-8deg);font-size:12px}.about-width{max-width:780px}.phone-launcher{z-index:30}.phone-launcher .phone-icon{font-size:23px}.phone-window{z-index:31}.phone-header small{display:block;font-size:9px;opacity:.7;margin-top:4px}.phone-header button{background:transparent;border:0;color:inherit;font-size:22px;cursor:pointer}.phone-tabs button{background:transparent;border:0;padding:11px 15px;cursor:pointer;font:inherit;font-size:12px}.phone-tabs button[aria-selected=true]{border-bottom:2px solid #34584c;color:#234c3e}.message-bubble small{font-size:10px;color:#74826f}.message-bubble p{margin:5px 0 0!important;font-size:13px!important;line-height:1.8!important}.phone-context{font-size:11px;line-height:1.9;color:#7a7f70;padding:17px 5px}.chat-photo{border:0;background:transparent;padding:0;max-width:240px;cursor:pointer}.chat-photo svg{width:100%;display:block}.photo-meta{display:flex;flex-direction:column;font-size:12px;margin:7px 0 15px}.photo-meta span{font-size:10px;color:#818776;margin-top:5px}.phone-photo{display:block;padding:0;width:100%;border:0;background:#b7b69e;overflow:hidden;cursor:zoom-in}.phone-photo svg{display:block;width:100%;height:auto}.photo-enlarged{height:280px;cursor:zoom-out;overflow:auto}.photo-enlarged svg{width:850px;max-width:none;height:auto;transform:translate(-495px,-235px)}.phone-content .site-button{font-size:12px}.field-addendum{border-top:1px solid #bdc7b2;margin-top:25px;padding-top:15px}.field-addendum>p{font-size:12px;line-height:1.9}.opening-boundary{border-left:2px solid #a88655;padding:12px;font-size:11px;line-height:1.9;color:#7b7965;margin-top:20px;background:#e9e7d9}.sheet-close{float:right;background:transparent;border:0;font-size:24px;cursor:pointer}.system-sheet::backdrop{background:#1e342d9c}.record-actions{display:flex;flex-direction:column;gap:20px;margin:25px 0}.record-actions input{display:block;max-width:100%;margin-top:8px}.status-strip{display:flex;justify-content:space-between}.status-strip button{background:none;border:0;font-size:18px;cursor:pointer}.read-mark{font-size:11px;color:#6d8066}.site-footer p{font-size:10px;line-height:1.8}.site-footer .text-link{font-size:11px}.arrived-note{background:#e3e9db}.phone-content a{color:#325f4e;text-decoration:underline}.site-button{cursor:pointer}.phone-content .caption{font-size:10px}.phone-content svg{font-family:system-ui,sans-serif}@media(max-width:700px){.site-nav>div{gap:17px}.issue-line{font-size:10px}.issue-line>span:last-child{display:none}.masthead-title span{display:none}.archive-filter span{margin-left:0;width:100%}.map-toolbar{display:block!important}.map-toolbar>span{display:block;margin-top:12px}.map-toolbar a{font-size:12px;padding:9px}.document-scan{padding:20px!important}.document-scan dl{grid-template-columns:70px 1fr;font-size:12px}.scan-heading{font-size:21px;letter-spacing:5px}.article-tools{gap:12px}.phone-window{max-height:72dvh!important}.phone-content{max-height:calc(72dvh - 110px)!important}.photo-enlarged svg{transform:translate(-500px,-230px)}.article-title{overflow-wrap:anywhere}.large-search button{padding:10px}.site-footer{padding-bottom:85px!important}}
.site-nav>div>a{position:relative;text-decoration:none;padding:15px 0;font-size:13px;font-weight:600;white-space:nowrap}.site-nav>div>a[aria-current=page]{border-bottom:0}.site-nav>div>a[aria-current=page]::after{left:0;right:0;bottom:-1px}.site-nav>div{align-self:stretch;align-items:center}.site-nav .search-form{margin-left:auto}.site-nav{gap:25px}@media(max-width:900px){.site-nav{flex-wrap:wrap;gap:0;padding-bottom:8px}.site-nav>div{width:100%;justify-content:space-between;gap:12px}.site-nav .search-form{width:100%;margin:0}.site-nav .search-form input{width:auto;flex:1}.site-nav>div>a{font-size:12px;padding:13px 0}}@media(max-width:400px){.site-nav>div{gap:8px}.site-nav>div>a{font-size:10px}.masthead-sub{font-size:8px}.site-top .site-shell{font-size:9px}}
.phone-launcher{width:auto;min-width:164px;height:46px;border-radius:5px;display:flex;gap:10px;padding:0 15px;font-size:12px;font-weight:500;letter-spacing:.04em}.phone-dot{position:absolute;top:5px;right:5px}.phone-launcher .phone-icon{line-height:1}.phone-header{flex-shrink:0}.phone-tabs{flex-shrink:0}@media(max-width:600px){.phone-launcher{width:auto;height:42px;min-width:154px;font-size:11px;padding:0 12px}}
.map-text-index{display:flex;flex-wrap:wrap;gap:0;border-top:1px solid #c5c5ae;padding:9px 15px;background:#f0e9d3}.map-text-index>span{width:100%;font-size:10px;color:#777c64;margin-bottom:4px}.map-text-index a{font-size:11px;padding:10px 15px 10px 0;min-height:40px}.phone-content{scroll-behavior:smooth}
.field-camera{border:6px solid #d4d7c6;background:#77846e;margin:14px 0}.field-camera svg{width:100%;display:block}.field-time{font-size:10px;letter-spacing:.06em;color:#7a8571;margin:8px 0 16px}.axis-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.axis-actions button{background:#e5e9dc;border:1px solid #bec9b2;padding:10px 3px;font-size:11px;min-height:42px}.field-line{font-size:12px;line-height:1.9;color:#52694f;border-left:2px solid #a3b295;padding-left:12px;margin:20px 0}.field-note-new{font-size:12px;line-height:1.9;background:#e3e8d8;padding:15px;margin:18px 0;color:#496449}.physical-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:16px 9px;background:#d6ceb1;margin:20px 0}.physical-slots>div{text-align:center}.physical-slots span,.physical-slots small{font-size:10px}.physical-slots button{display:grid;place-items:center;width:100%;aspect-ratio:1;background:#6e765e;border:3px solid #afa17b;color:#e1e0c9;margin:9px 0;font-size:11px}.physical-slots svg{width:100%;height:100%}.physical-parts{display:flex;justify-content:center;gap:12px}.physical-parts button{border:1px solid #b6b89e;background:#e9e2c9;width:75px;padding:4px}.physical-parts button.held{outline:2px solid #826740;outline-offset:3px}.physical-parts svg{width:100%}.physical-parts small{font-size:10px}.field-source{font-size:10px;line-height:1.8;border-top:1px solid #c9cdbb;padding-top:17px;margin-top:24px}.companion-help>p{font-size:11px;line-height:1.9}.companion-help .text-link{font-size:11px}.field-primary{width:100%;margin:16px 0}.offline-note{border:1px solid #b8c1aa;background:#e9eadd;color:#5b6e50;padding:16px;font-size:13px;line-height:1.8}.offline-note small{display:block;font-size:10px;margin-top:8px}.phone-content .field-time~p{font-size:12px;line-height:1.9}
.lead-image .campus-photo,.article-figure .campus-photo{width:100%;height:auto;display:block;object-fit:cover}.lead-image .campus-photo{aspect-ratio:1000/580;object-position:50% 50%}
.field-photo-image{display:block;position:relative;width:100%;line-height:0}.field-photo-image>img{display:block;width:100%;height:auto}.field-photo-image .fixture-label{position:absolute;inset:0;width:100%;height:100%;max-width:none;transform:none;pointer-events:none;mix-blend-mode:multiply}.chat-photo .field-photo-image{width:100%}.phone-photo .field-photo-image{width:100%}.photo-enlarged .field-photo-image{width:850px;max-width:none;left:50%;transform:translate(-89.583333333%, -190px)}.photo-enlarged .field-photo-image>img{width:850px;max-width:none;height:auto}.photo-enlarged .fixture-label{width:850px;height:auto;transform:none;max-width:none}@media(max-width:600px){.photo-enlarged .field-photo-image{transform:translate(-89.583333333%, -185px)}}
.fitting-photo{position:relative;line-height:0}.fitting-photo>img{width:100%;height:auto}.fitting-controls{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;mix-blend-mode:screen}.field-symbol path,.field-symbol ellipse{fill:none;stroke:#c4b68c;stroke-width:5}.hole-hit{position:absolute;border:0!important;border-radius:50%!important;background:transparent;cursor:pointer;min-width:32px;min-height:32px}.hole-hit:hover{box-shadow:0 0 0 2px #c3b78b}.field-camera{border:0;background:transparent}.phone-window.field-open{width:470px;max-height:82vh}.field-open .phone-content{max-height:calc(82vh - 110px)}.offline-site-banner{font-size:11px;color:#80725b;background:#e5dfca;border-bottom:1px solid #c4bda8;padding:10px 14px}@media(max-width:600px){.phone-window.field-open{width:auto;max-height:82dvh!important}.field-open .phone-content{max-height:calc(82dvh - 110px)!important}.phone-tabs button{padding-left:12px;padding-right:12px}}
.notebook-photograph{position:relative;line-height:0}.notebook-photograph>img{display:block;width:100%;height:auto}.note-ink{position:absolute;top:16%;font-family:"KaiTi","STKaiti","FangSong",serif;font-size:clamp(9px,1.65vw,19px);line-height:1.9;color:#3d4237;mix-blend-mode:multiply;letter-spacing:.05em}.note-left{left:12%;width:32%;transform:rotate(-.5deg)}.note-right{left:54%;width:32%;transform:rotate(.7deg)}.note-right span{font-size:.84em;display:block;text-align:right}.notebook-transcript{font-size:12px;line-height:1.9;padding:14px 0;border-bottom:1px solid #c9c9b8}.notebook-transcript summary{cursor:pointer;color:#48674f}.article-body .notebook-transcript p{font-size:13px;line-height:1.9;margin:12px 0}.article-figure:has(.notebook-record){overflow:visible}@media(max-width:600px){.note-ink{font-size:clamp(8px,2.45vw,13px);line-height:1.7}.notebook-transcript{font-size:12px}.note-left{left:11%}.note-right{left:54%}}
/* Each item crops one physical insert from a shared camera photograph. */
.copper-piece{display:block!important;position:relative;width:100%;aspect-ratio:460/175;overflow:hidden;line-height:0}.copper-piece>img{position:absolute;max-width:none!important;width:333.913%!important;height:auto!important;top:-240%;pointer-events:none}.copper-engraving{position:absolute;inset:35% 20% 25%;display:flex;justify-content:center;align-items:center;gap:8%;mix-blend-mode:multiply}.copper-engraving i{display:block;width:2px;height:70%;background:#474535;box-shadow:1px 0 0 #b5a36e}.physical-slots button{aspect-ratio:460/220}.physical-parts button{width:110px}.physical-parts .copper-piece{margin-bottom:6px}
.field-classroom-photo{display:block;width:100%;height:auto;margin:15px 0}
/* A physical handset surrounds a live, readable screen, not a screenshot. */
.phone-scrim{display:none}.phone-window.handset,.phone-window.handset.field-open{right:30px;left:auto;bottom:82px;width:408px;height:min(800px,calc(100dvh - 110px));max-height:none!important;padding:10px;background:linear-gradient(110deg,#747772 0,#292d2c 3%,#141716 48%,#858b85 97%,#252927);border:1px solid #b4b9b1;border-radius:48px!important;box-shadow:0 24px 70px #10271e55,0 0 0 2px #272b27,inset 0 0 0 3px #333a34,inset 0 0 0 5px #a0a69d;overflow:visible;z-index:45}.phone-screen{display:flex;flex-direction:column;min-height:0;height:100%;width:100%;background:#f4f5ef;border:3px solid #111713;border-radius:38px;overflow:hidden;isolation:isolate}.hardware-volume,.hardware-power{position:absolute;display:block;width:4px;background:linear-gradient(90deg,#9ba297,#434b42);border-radius:4px}.hardware-volume{left:-5px;top:110px;height:50px;box-shadow:0 65px 0 #606b5d}.hardware-power{right:-5px;top:160px;height:70px}.phone-status{height:42px;flex:0 0 42px;position:relative;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#f4f5ef;font:600 11px/1 system-ui;color:#1e2b21}.phone-island{position:absolute;top:7px;left:50%;transform:translateX(-50%);width:91px;height:23px;border-radius:20px;background:#121814;box-shadow:inset 0 -1px 1px #3a4239}.phone-island:before{content:"";position:absolute;left:16px;top:9px;width:38px;height:3px;background:#3e473e;border-radius:4px}.phone-island i{position:absolute;right:12px;top:6px;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#4e7585,#142732 35%,#111d24 60%,#273632);border:2px solid #26392f}.phone-indicators{display:flex;gap:7px;align-items:center;font-size:10px}.battery-icon{position:relative;width:20px;height:10px;border:1px solid #3a493c;border-radius:3px;display:inline-block}.battery-icon:before{content:"";position:absolute;inset:1px 4px 1px 1px;background:#3a493c;border-radius:1px}.battery-icon:after{content:"";position:absolute;right:-3px;top:2px;width:2px;height:4px;background:#3a493c}.handset .phone-header{min-height:61px;padding:11px 20px;background:#f4f5ef;color:#263e2f;letter-spacing:0;border-bottom:1px solid #d7dfd2}.handset .phone-header b{font-size:16px;font-weight:650}.handset .phone-header small{font-size:10px;color:#70816d;opacity:1;margin-top:3px}.handset .phone-header button{font-size:24px;width:35px;height:35px;padding:0;border-radius:50%!important;background:#e5eadf;color:#405b45}.handset .phone-tabs{background:#f4f5ef;padding:5px 9px 0;gap:3px}.handset .phone-tabs button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:10px;padding:7px 9px 9px;min-height:51px;border-radius:10px 10px 0 0!important;color:#82907a}.handset .phone-tabs button>span{font-size:20px;line-height:20px}.handset .phone-tabs button[aria-selected=true]{background:#e5eddd;color:#37593b;box-shadow:inset 0 -2px #597b46;border-bottom:0}.handset .phone-content,.handset.field-open .phone-content{flex:1;min-height:0;max-height:none!important;padding:18px 17px 26px;background:#edf0e8;scrollbar-gutter:stable;scrollbar-width:thin;overflow-y:auto}.phone-home-edge{flex:0 0 24px;background:#edf0e8;display:flex;align-items:center;justify-content:center}.phone-home-edge span{width:106px;height:4px;background:#3c493b;border-radius:5px}.handset .message-row{display:flex;align-items:flex-start;gap:8px;margin:16px 0}.contact-avatar{width:32px;height:32px;flex:0 0 32px;border-radius:11px;display:grid;place-items:center;font:13px serif;color:#536447;background:#dce3c7;border:1px solid #bdcba8}.avatar-zhang{background:#d6dfd6;color:#47634d}.avatar-li{background:#e8dfc6;color:#827448}.avatar-chen{background:#d1dfe1;color:#52737b}.handset .message-bubble{margin:0;border:0;background:#fffef8;border-radius:0 12px 12px 12px;box-shadow:0 1px 2px #4b623613;padding:10px 12px;max-width:calc(100% - 40px)}.handset .message-bubble small{font-size:10px;color:#89927c}.handset .message-bubble p{font-size:13px!important;line-height:1.85!important}.handset .message-row.own{flex-direction:row-reverse}.handset .message-bubble.own{background:#dce9cd;border-radius:12px 0 12px 12px}.handset .chat-photo{margin-left:40px;max-width:240px;border-radius:12px;overflow:hidden;border:3px solid #fffef8;box-shadow:0 3px 10px #5067411a}.handset .message-time{font-size:10px;margin:24px 0 12px}.handset .phone-context{font-size:12px;padding:14px 8px;line-height:1.8}.handset .site-button{border-radius:10px!important;padding:12px 15px}.handset .phone-photo{border-radius:15px!important;border:0;box-shadow:0 3px 14px #3c503a20}.handset .photo-meta b{font:600 23px/1.4 system-ui}.handset .photo-meta span{font-size:11px}.handset .field-addendum{background:#f8faf2;border:0;border-radius:15px;padding:16px;margin-top:20px}.handset .opening-boundary{background:transparent;border:0;padding:0;font-size:10px}.album-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.album-item{border-radius:12px;overflow:hidden;background:#fffef8}.album-item summary{list-style:none;cursor:pointer}.album-item summary::-webkit-details-marker{display:none}.album-item summary>img{width:100%;height:95px;object-fit:cover}.album-item summary>span{display:block;padding:9px;font-size:12px}.album-item small{display:block;font-size:10px;color:#8c937d}.album-item[open]{grid-column:1/-1}.album-item[open] summary>img{display:none}.album-full{width:100%;height:auto}.article-camera img{width:100%;height:auto;max-height:440px;object-fit:cover}.article-camera figcaption{font-size:11px;line-height:1.8;color:#7a806a;padding-top:10px}.phone-launcher{z-index:46;border-radius:24px!important;box-shadow:0 5px 20px #223c3033}.phone-launcher .phone-icon{width:16px;height:25px;border:2px solid #e4ead9;border-radius:5px;font-size:0;position:relative}.phone-launcher .phone-icon:after{content:"";position:absolute;width:6px;height:2px;background:#e4ead9;left:3px;bottom:2px}
@media(max-width:700px){.phone-scrim{display:block;position:fixed;inset:0;background:#17251e59;backdrop-filter:blur(3px);border:0;z-index:44}.phone-window.handset,.phone-window.handset.field-open{width:min(400px,calc(100vw - 30px));height:min(800px,calc(100dvh - 92px));left:50%;right:auto;transform:translateX(-50%);bottom:68px;max-height:none!important;padding:8px;border-radius:40px!important}.phone-screen{border-radius:31px}.handset .phone-content{padding:14px 12px 20px}.handset .phone-status{padding:0 20px}.handset .phone-header{padding:10px 15px;min-height:56px}.hardware-volume{left:-4px}.hardware-power{right:-4px}.handset .phone-tabs button{padding-left:6px;padding-right:6px}.handset .message-bubble p{font-size:13px!important}.phone-home-edge{flex-basis:20px}}@media(max-width:360px){.phone-window.handset,.phone-window.handset.field-open{width:calc(100vw - 22px)}.handset .phone-content{padding-left:10px;padding-right:10px}.handset .message-bubble{padding:9px;max-width:calc(100% - 34px)}.handset .contact-avatar{width:27px;height:27px;flex-basis:27px}.handset .message-row{gap:6px}.handset .phone-status{padding:0 15px}.phone-island{width:80px}.handset .phone-tabs{padding-left:3px;padding-right:3px}}
.field-current{font-size:11px!important;color:#6f7d61;text-align:center;margin:12px 0 5px}.handset button:focus-visible{outline:3px solid #ab723e;outline-offset:2px}
/* Native hierarchy: desktop -> app list -> detail. No cross-app tab bar. */
.phone-window.handset.native-handset{--device-height:min(820px,calc(100dvh - 106px),calc((100vw - 32px)/.478));height:var(--device-height)!important;width:calc(var(--device-height)*.478)!important;max-height:none!important;aspect-ratio:.478;padding:8px;border-radius:43px!important;bottom:78px;right:26px;left:auto;transform:none}.native-handset .phone-screen{border-width:3px;border-radius:33px;background:#f6f6f5}.native-handset .phone-status{height:37px;flex-basis:37px;padding:0 20px;font-size:10px;background:#f6f6f5;z-index:1}.native-handset .phone-island{top:5px;width:78px;height:21px}.native-handset .phone-island:before{left:12px;width:32px;top:9px}.native-handset .phone-island i{right:10px;top:5px}.native-handset .phone-content.native-app-content{padding:0;max-height:none!important;min-height:0;background:#f6f6f5;scrollbar-gutter:auto;scrollbar-width:thin;flex:1}.native-handset .phone-home-edge{width:100%;height:23px;min-height:23px;flex:0 0 23px;background:#f6f6f5;border:0;border-radius:0!important;padding:7px}.native-handset .phone-home-edge span{width:94px;height:4px;background:#242a27}.native-app-header{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;flex:0 0 auto;min-height:45px;padding:3px 8px 7px;border-bottom:1px solid #d8dcd8;background:#f6f6f5}.native-app-header>button{border:0;background:transparent;font-size:30px;line-height:1;color:#397459;min-height:34px;border-radius:8px!important;padding:0}.native-app-header>div{display:flex;flex-direction:column;align-items:center;gap:3px}.native-app-header b{font-size:12px;font-weight:600}.header-avatar{width:27px;height:27px;border-radius:50%;background:#d7dfd1;font-size:10px;display:grid;place-items:center;color:#5c6d4e}.app-view-chat .native-app-header{min-height:65px}.native-list-page{padding:16px 14px}.native-large-title{font:700 27px/1.3 system-ui;color:#1c2720;letter-spacing:-1px}.native-list-subtitle{font:11px/1.6 system-ui;color:#859180;margin:6px 0 20px}.native-desktop{min-height:100%;display:flex;flex-direction:column;align-items:center;padding:25px 16px 12px;isolation:isolate;background:linear-gradient(180deg,#2b44303b,#1533271c 45%,#233d2dc9),url('assets/photographic/campus-2026.png') 65% center/auto 100%;color:white}.app-view-home .phone-screen{background:#526d51}.app-view-home .phone-status{background:#637e60;color:white}.app-view-home .phone-indicators{color:white}.app-view-home .battery-icon{border-color:white}.app-view-home .battery-icon:before,.app-view-home .battery-icon:after{background:white}.app-view-home .phone-home-edge{background:#294331}.app-view-home .phone-home-edge span{background:#f3f3e7}.desktop-date{font-size:13px;text-shadow:0 1px 6px #213d24}.desktop-clock{font:300 clamp(42px,5vw,65px)/1.25 system-ui;letter-spacing:-3px;text-shadow:0 1px 7px #213d2422}.desktop-caption{font-size:10px;opacity:.9;margin:9px 0 0}.desktop-spacer{flex:1;min-height:55px}.desktop-widget{display:flex;align-items:stretch;min-height:108px;width:100%;padding:0;border:1px solid #ffffff52;background:#f7f8edcc;backdrop-filter:blur(14px);color:#2c4a32;border-radius:20px!important;overflow:hidden;margin-bottom:26px;text-align:left}.desktop-widget>img{width:38%;object-fit:cover;object-position:65% 50%}.desktop-widget>span{display:flex;flex-direction:column;justify-content:center;padding:10px;gap:6px;flex:1}.desktop-widget small{font-size:9px;opacity:.65}.desktop-widget b{font-size:12px;line-height:1.5}.desktop-widget i{font-size:9px;font-style:normal;color:#6c7f5b}.native-dock{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:100%;padding:13px 10px 10px;background:#f1f3e24d;border:1px solid #ffffff38;border-radius:25px;backdrop-filter:blur(20px)}.native-dock button{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;border:0;background:transparent;padding:0;color:white;min-width:0}.native-dock b{font-size:9px;font-weight:500;text-shadow:0 1px 4px #233e2e88}.native-app-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;box-shadow:0 3px 8px #172e2526;font-size:29px;font-weight:500;line-height:1}.app-message{color:white;background:linear-gradient(#91c86d,#56a15e)}.app-message:after{content:"";position:absolute;background:white;width:5px;height:5px;transform:rotate(25deg);top:26px;left:18px}.app-photo{color:#cf6a47;background:conic-gradient(from 40deg,#f8e8c7,#e0e8cb,#c6dce1,#ddd2e7,#f5d9cf,#f8e8c7)}.app-notes{color:#777658;background:linear-gradient(#e8ca6b 0 22%,#fffef5 22%)}.app-field{color:#eff9e9;background:linear-gradient(140deg,#86a097,#4b7367)}.app-badge{position:absolute;top:-4px;right:0;background:#bf6e53;border:1px solid #f1e4cc;color:white;border-radius:10px;min-width:15px;font:9px/14px system-ui;font-style:normal}.conversation-cell{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:15px 0;border:0;border-bottom:1px solid #dde2d8;background:transparent}.conversation-cell>.contact-avatar{width:43px;height:43px;flex-basis:43px;border-radius:50%;font-size:18px}.conversation-cell>span:nth-child(2){flex:1;min-width:0}.conversation-cell b{display:block;font-size:13px;color:#25372b}.conversation-cell small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;color:#89917f;margin-top:3px}.conversation-cell time{align-self:flex-start;font-size:9px;color:#9a9f94;margin-top:4px}.group-avatar{display:grid;grid-template-columns:1fr 1fr;gap:2px;width:43px;height:43px;flex:0 0 43px;background:#e0e7d9;border-radius:13px;padding:5px}.group-avatar i{display:grid;place-items:center;background:#c5d3bf;border-radius:4px;font-style:normal;font-size:9px}.group-avatar i:nth-child(2){background:#d8cdb5}.group-avatar i:nth-child(3){background:#c0d3d6}.native-discreet{font-size:9px;color:#a2aa98;text-align:center;margin:32px 0}.native-chat-content{padding:6px 11px 15px}.native-chat-content .message-row{margin:13px 0;gap:6px}.native-chat-content .contact-avatar{width:25px;height:25px;flex-basis:25px;font-size:11px;border-radius:9px}.native-chat-content .message-bubble{max-width:calc(100% - 31px);padding:9px 11px;background:#e9ece6;box-shadow:none;border-radius:0 15px 15px 15px}.native-chat-content .message-bubble.own{background:#d4e7c7;border-radius:15px 0 15px 15px}.native-chat-content .message-bubble small{font-size:9px}.native-chat-content .message-bubble p{font-size:12px!important;line-height:1.75!important}.native-chat-content .message-time{font-size:9px;margin:13px 0}.native-chat-content .chat-photo{margin-left:31px;max-width:calc(100% - 31px);border:0;border-radius:15px}.native-chat-content .phone-context{font-size:11px;padding:10px}.native-inline-action{display:block;max-width:100%;text-align:center;font-size:11px!important;line-height:1.7;padding:10px 12px!important;margin:14px 0;border:1px solid #cdd6c5;background:#eff3e8;color:#4d744c;border-radius:12px!important;text-decoration:none}.native-composer{display:flex;gap:7px;align-items:center;flex:0 0 47px;padding:6px 11px;background:#f6f6f5;border-top:1px solid #e0e3dc}.native-composer>span{font-size:22px;color:#86927e}.native-composer>button{flex:1;border:1px solid #d4dacd;border-radius:20px!important;padding:7px 12px;text-align:left;font-size:10px;color:#8a9681;background:#fafbf8}.native-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin:0 -8px}.native-photo-grid button{position:relative;padding:0;aspect-ratio:1;border:0;overflow:hidden;background:#d8dfd1}.native-photo-grid img{width:100%;height:100%;object-fit:cover}.native-photo-grid span{position:absolute;bottom:4px;right:5px;font:8px system-ui;color:white;text-shadow:0 1px 4px #152c1d}.album-date-label{margin-top:16px;font-size:10px;color:#9aa28e}.native-photo-view{padding:18px 0;min-height:100%;display:flex;flex-direction:column;justify-content:center}.photo-view-metadata{text-align:center;padding:0 12px 16px}.photo-view-metadata b{display:block;font-size:13px}.photo-view-metadata span{display:block;font-size:9px;line-height:1.7;color:#8c9583;margin-top:5px}.native-photo-view .phone-photo{width:100%;margin:0;border:0;border-radius:0!important;box-shadow:none}.native-photo-view .phone-photo:not(.photo-enlarged){cursor:zoom-in}.native-photo-view .photo-enlarged{height:260px;flex:0 0 260px}.photo-view-caption{font-size:9px;color:#939d88;text-align:center;margin:10px 0}.native-share-action{margin:22px 20px 0;background:#5d8056;color:#fffdf3;border:0;border-radius:15px!important;padding:13px;font-size:12px}.native-shared{font-size:10px;color:#829475;text-align:center;margin:18px 0}.single-camera-image{width:100%;height:auto;object-fit:contain}.origin-record{padding:15px;background:#edeede;border-radius:12px;margin-top:24px}.origin-record>b{font-size:11px}.origin-record p{font-size:11px;line-height:1.8;margin:9px 0}.origin-record small{font-size:9px;color:#90977f}.native-notes-list{background:white;border-radius:14px;overflow:hidden}.native-notes-list>button,.native-notes-list>a{display:flex;align-items:center;gap:9px;width:100%;padding:14px 11px;background:transparent;border:0;border-bottom:1px solid #e9ecdf;text-align:left;text-decoration:none;color:#3f583b}.note-file-icon{font-size:21px;color:#bba45e;flex:0 0 24px}.native-notes-list b{font-size:11px;line-height:1.5;display:block}.native-notes-list small{font-size:9px;color:#9aa18f;display:block;margin-top:3px}.native-notes-list i{margin-left:auto;font:18px serif;color:#abb3a2}.native-empty-note{font-size:11px;line-height:1.9;color:#87957b;padding:15px}.native-note{padding:18px 15px;overflow-wrap:anywhere;background:#fffef5;min-height:100%}.native-note>small{font-size:9px;color:#9d9e83}.native-note h2{font-size:20px;line-height:1.5;margin:13px 0}.native-note p{font-size:12px;line-height:1.9;margin:17px 0}.native-note-deck{color:#8b977b}.native-note table{display:block;overflow-x:auto;font-size:11px;max-width:100%}.native-note .document-scan{padding:12px!important}.native-note .scan-heading{font-size:16px}.native-field-content{padding:14px 12px}.native-field-content>p{font-size:12px;line-height:1.9}.native-handset .phone-content .field-time~p{font-size:12px}.native-field-content .field-line{font-size:11px}.native-field-content .physical-parts{gap:7px}.native-field-content .physical-parts button{width:29%}.native-field-content .axis-actions button{font-size:10px;min-height:42px}.native-handset .hardware-volume{top:105px;height:40px;box-shadow:0 52px 0 #606b5d}.native-handset .hardware-power{top:140px;height:60px}@media(max-width:700px){.phone-window.handset.native-handset{--device-height:min(820px,calc(100dvh - 91px),calc((100vw - 28px)/.478));left:50%;right:auto;transform:translateX(-50%);bottom:66px;padding:7px;border-radius:39px!important}.native-handset .phone-screen{border-radius:30px}.native-handset .phone-content.native-app-content{padding:0}.native-dock{gap:7px;padding:10px 7px}.native-desktop{padding-left:12px;padding-right:12px}.native-list-page{padding-left:12px;padding-right:12px}.native-app-icon{width:39px;height:39px;border-radius:11px}.native-handset .phone-status{padding-left:15px;padding-right:15px}.native-desktop .desktop-widget{margin-bottom:20px}}@media(max-height:700px){.native-desktop{padding-top:15px}.desktop-clock{font-size:44px}.desktop-spacer{min-height:20px}.desktop-widget{min-height:85px;margin-bottom:16px}.native-app-icon{width:34px;height:34px;border-radius:10px;font-size:25px}.native-dock{gap:5px;padding:10px 5px 8px}.native-dock b{font-size:8px}.native-app-header b{font-size:11px}.native-large-title{font-size:24px}.native-handset .phone-status{padding:0 13px;font-size:9px}.phone-island{max-width:69px}.native-chat-content .message-bubble p{font-size:11px!important}.native-chat-content{padding-left:8px;padding-right:8px}}
/* The phone keeps the original image and readable transcript, not desktop-sized ink overlays. */
.native-note .note-ink{display:none}.native-note .article-figure,.native-note .saved-note-image{margin:14px 0}.native-note .article-figure img{display:block;width:100%;height:auto}.native-note .saved-note-image figcaption{font-size:12px;line-height:1.5;color:inherit;margin-top:6px}

/* Short landscape viewports expand the same phone screen instead of shrinking text. */
.phone-expanded-close{display:none}
@media (orientation:landscape) and (max-height:500px){
 .phone-window.handset.native-handset{--device-height:calc(100dvh - 32px);width:min(640px,calc(100vw - 32px))!important;aspect-ratio:auto;left:auto;right:16px;bottom:16px;transform:none;border-radius:26px!important}
 .native-handset .phone-screen{border-radius:18px}
 .native-handset .hardware-volume,.native-handset .hardware-power,.native-handset .phone-island{display:none}
 .native-handset .phone-status{padding-right:74px}
 .native-handset .phone-expanded-close{display:block;position:absolute;right:10px;top:6px;z-index:4;min-width:48px;min-height:32px;padding:4px 8px;border:0;border-radius:8px;background:#e5e9e3;color:#29362b;font:12px system-ui;cursor:pointer}
}

#record-text-panel textarea{display:block;box-sizing:border-box;width:100%;min-height:160px;max-height:40dvh;resize:vertical;overflow:auto;font:12px/1.5 ui-monospace,monospace;white-space:pre;tab-size:2}#record-text-panel p{font-size:12px;line-height:1.5}
